StockOracle AI / Docs
Docs Free Plugin Free

Free Plugin Reference

Complete documentation for the StockOracle AI free plugin — every feature, every setting, every screen.

Overview

The free plugin is a fully standalone, production-ready inventory intelligence layer for WooCommerce. It is listed on WordPress.org and requires no paid features to be useful — nothing is crippled.

4
Admin Pages
3
DB Tables
2
Cron Events

The four admin pages are accessible from the StockOracle top-level menu in WordPress admin (dashicons-chart-line, position 56):

  • Dashboard — Visual overview of your inventory health
  • Inventory — Detailed per-product analysis table
  • Alerts — Filterable list of reorder alerts
  • Settings — All configuration options (4 tabs)

Dashboard

The main dashboard (StockOracle → Dashboard) provides an instant visual overview of your entire inventory in one screen.

Dashboard Header

The header shows the page title, the last-updated timestamp, a Refresh button that forces recalculation of all metrics via AJAX, and a View Full Inventory link to the Inventory Analysis page.

Stat Cards Row

Six key metric cards appear in a responsive grid:

CardWhat it showsData Source
Total SKUsCount of all published WooCommerce productsLive WP_Query
In StockProducts currently in stockWooCommerce stock_status
Low StockProducts at or below the configured thresholdSettings: low_stock_threshold
Out of StockProducts with zero or negative stockWooCommerce stock_status
Total Inventory ValueSum of (stock × price) for all SKUsAnalyzer module
Dead Stock ValueCapital tied up in unsold inventoryDeadStock module

Inventory Health Score

The health score is a 0–100 composite index graded A–F. It measures five equally-weighted factors (20 points each):

FactorPointsWhat it measures
Stockout Rate0–20% of SKUs currently out of stock (lower = better)
Low Stock Rate0–20% of SKUs dangerously low (lower = better)
Dead Stock Rate0–20% of SKUs with no recent sales (lower = better)
Reorder Alert Rate0–20% of SKUs past their reorder point (lower = better)
Velocity Coverage0–20% of SKUs with measurable sales velocity (higher = better)
0–39
Grade F / D — Red
40–69
Grade C / B — Yellow
70–100
Grade A — Green

Pro users can extend the scoring model by adding custom factors via the stockoracle_health_score_factors filter. See Developer API.

Dashboard Charts

All three charts are rendered with Chart.js v4.4.0, bundled locally (no CDN calls). Data is passed via wp_localize_script as JSON.

Stock Distribution (Doughnut)

Shows the proportion of In Stock, Low Stock, and Out of Stock products. Useful for a quick visual of overall stock health.

Sales Velocity — Top 10 (Horizontal Bar)

Shows the top 10 products by daily sales velocity (units/day) over the configured analysis period. Helps identify your fastest movers for priority restocking.

30-Day Sales Trend (Line Chart)

Shows daily total units sold over the past 30 days. Data is drawn from the stockoracle_daily_sales table, populated nightly by the WP-Cron job.

First Run

The 30-day trend chart will show sparse data for the first month. The daily cron job only populates yesterday's data on each run, so history builds up over time.

Inventory Analysis

Navigate to StockOracle → Inventory for the full per-product analysis table, built on WordPress's native WP_List_Table.

Table Columns

ColumnDescriptionSortable
Product NameProduct title with link to edit screenYes
SKUWooCommerce product SKUYes
Current StockCurrent stock quantityYes
Sales (30d)Total units sold in the last 30 daysYes
Velocity/DayAverage daily sales rateYes
Days Until StockoutCurrent stock ÷ daily velocityYes
StatusIn Stock / Low Stock / Out of Stock badgeNo
ABCABC inventory classification badgeNo

Filtering & Search

  • Use the search box to filter by product name or SKU.
  • Use the status filter links (All / In Stock / Low Stock / Out of Stock) above the table.
  • Click any sortable column header to sort ascending/descending.
  • Pagination is shown at 20 products per page.

ABC Inventory Classification

ABC analysis classifies products using the Pareto principle applied to cumulative revenue contribution:

Class Products Revenue Strategy
A Top ~20% ~80% of revenue Tight control, frequent replenishment, high safety stock
B Next ~30% ~15% of revenue Moderate control, regular reviews
C Bottom ~50% ~5% of revenue Simple controls, consider rationalizing

Classification is computed from the analysis period (configurable, default 90 days). Results are cached in a 24-hour transient for performance.

Reorder Alerts

Navigate to StockOracle → Alerts to see which products need immediate attention.

Alert Levels

LevelTrigger Condition
CRITICALStock at or below reorder point and days-to-stockout ≤ lead time
WARNINGStock at or below reorder point
INFOStock within 1.5× the reorder point (approaching reorder)

Reorder Point Formula

reorder_point = (avg_daily_sales × lead_time) + (safety_stock_days × avg_daily_sales)

Where lead_time and safety_stock_days are set in Settings → General.

Filtering Alerts

Use the tab filters (All / Critical / Warning / Info) at the top of the Alerts page. Each alert card shows the product name, SKU, current stock, reorder point, and suggested reorder quantity.

Dead Stock Detection

Products with stock greater than zero but zero sales within the Dead Stock Threshold (configurable, default 90 days) are flagged as dead stock.

Each dead stock product receives a tiered recommendation:

  • No sales > 365 days — "Consider discontinuing — no sales in over a year."
  • No sales > 180 days — "Consider clearance sale — no sales in over 6 months."
  • No sales > threshold — "Consider promotional pricing to move this stock."

The dashboard shows a Dead Stock Summary card with the count of dead stock items and the total capital tied up.

CSV Export

Click Export All CSV on the Inventory Analysis page to download a full CSV of your inventory data.

CSV Columns

The export includes 10 columns:

  1. Product ID
  2. Product Name
  3. SKU
  4. Current Stock
  5. Sales (30d)
  6. Daily Velocity
  7. Days Until Stockout
  8. Stock Value
  9. Stock Status
  10. ABC Class

The file uses UTF-8 encoding with a BOM marker for correct display in Excel. It is generated server-side via AJAX and streamed directly to the browser.

Settings Reference

All settings are stored in a single WordPress option: stockoracle_settings. Navigate to StockOracle → Settings.

General Tab

SettingDefaultRangeDescription
Forecast Period307–365Days of data used for demand forecasting
Dead Stock Threshold9030–365Days with no sales to classify as dead stock
Default Lead Time71–90Days from order to receipt of stock
Safety Stock Buffer30–30Extra buffer days added to reorder point
Low Stock Threshold51–100Unit count at which a product is flagged as low stock
Analysis Period9030–365Historical days used for velocity calculations

Alerts Tab

SettingDefaultDescription
Enable Email AlertsOffToggle weekly digest email
Alert EmailAdmin emailRecipient for digest emails
Alert TypesAllWhich severity levels trigger emails

Advanced Tab

SettingDescription
Reset All DataTruncates all StockOracle custom tables (not WooCommerce orders)

Go Pro Tab

Information about the Pro addon with a feature comparison and upgrade CTA. No configuration here.

Cron Jobs

stockoracle_daily_data_collection

Frequency: Daily. Populates the stockoracle_daily_sales table with yesterday's completed order data from WooCommerce. Also refreshes ABC classification and the health score cache.

stockoracle_weekly_alerts

Frequency: Weekly. Sends the email alert digest if email alerts are enabled in settings and there are products requiring attention.