AI for store owners

How to check an AI's answers about your WooCommerce store

To check an AI's answer about your store, find out exactly what it measured (date range, metric, order statuses), then open the matching WooCommerce Analytics report with the same settings and compare one or two numbers. If they differ, the cause is nearly always the date range, net versus total sales, refunds, excluded statuses or data that hasn't synced yet.

This guide gives a four-step method, a table of which report to check each kind of answer against, and the sanity checks that catch mistakes in seconds.

Step 1: pin down what the AI measured

An answer like "sales were up 12% last month" hides four choices. Before you compare, get each one:

Choice Ask Why it matters
Date range Which exact dates? "Last month" is clear; "last week" and "the last 30 days" aren't
Time zone Store time zone or UTC? Orders near midnight move between days
Metric Net, gross or total sales? Total sales includes tax and shipping
Which orders Which statuses? Refunds removed? A raw export counts orders Analytics leaves out

A tool that shows the lookups it ran answers most of these for you. With a general AI chat, ask it to state the date range, the column it used and the formula.

Step 2: open the matching report

Set the same date range in the report, and the same comparison if the answer included one (the Compare to option in the date picker). Then find the same number.

What the AI answered Check it in Notes
Net, gross or total sales, refunds, coupons, shipping, taxes Analytics › Revenue Columns: Gross sales, Returns, Coupons, Net sales, Taxes, Shipping, Total sales
Orders and average order value Analytics › Orders AOV is net sales divided by orders
Items sold Analytics › Overview or Analytics › Products Sum of units across included orders
Best sellers Analytics › Products Sort by Items sold or Net sales
Stock left Analytics › Stock Current levels; sales rate comes from Products
Products about to sell out Analytics › Stock plus Analytics › Products Divide stock by daily units sold over the same window
Coupon results Analytics › Coupons Orders and amount discounted per coupon
Orders by channel or campaign WooCommerce › Orders, Origin column Core Analytics has no attribution report (WooCommerce's separate Analytics extension, in beta, adds one)
Customers who stopped buying WooCommerce › Customers with filters Filter by orders count and last active date
Today's orders WooCommerce › Orders The Orders list is live

Two of these need care. For channels, there's no report to compare against, so open a handful of orders and confirm their Order attribution box matches the AI's grouping. For lapsed customers, the Customers report's "last active" date isn't always the same as the date of the last order, so expect small differences.

Step 3: check the usual causes of a mismatch

If the numbers differ, work down this list. It covers nearly every case.

  1. Date boundaries. One side used the store's time zone, the other UTC, or one included today and the other didn't.
  2. Net versus total. Net sales is gross sales minus returns and coupons, and excludes tax and shipping. Total sales adds tax and shipping back.
  3. Refund dating. Analytics records a refund on the date it was made, not the order date. A refund in November for an October order lowers November.
  4. Excluded statuses. Analytics leaves out orders whose statuses are listed under Analytics › Settings. See excluded statuses. A CSV of every order won't.
  5. Analytics hasn't caught up. New orders reach the Analytics tables in the background through Action Scheduler, so very recent orders can be missing for a while. Stores that never ran Import historical data can be missing older orders entirely.
  6. Date type. Analytics can date orders by when they were created, paid or completed (Analytics › Settings). An export dated by order creation won't match a report dated by completion.

The full list of reasons WooCommerce numbers disagree is in why WooCommerce Analytics numbers don't match your orders.

Step 4: run the sanity checks

These take seconds and catch most arithmetic mistakes, from any AI:

  • Does the percentage match the numbers? "Up 25% from $4,000" should land near $5,000. If the AI gives both figures, divide them yourself.
  • Do the parts add up? Gross sales minus returns minus coupons should equal net sales. Top-10 product revenue can't exceed total net sales.
  • Is the scale right? If you normally do 80 orders a week and the answer says 800, something's wrong before you check anything else.
  • Does the AOV hold? Net sales divided by orders should give the average order value it quoted.
  • Is the date range what you asked for? Surprisingly often, it isn't.

Say an AI tells you October net sales were $9,450 from 126 orders, an AOV of $82. Divide: $9,450 ÷ 126 = $75. Either the AOV or one of the totals is wrong, and you know which report to open.

How Askshelf makes this easier

Askshelf shows the lookups behind each answer, with the date range and options it used, and you can copy them. It reads through WooCommerce Analytics, so it counts the same order statuses, takes refunds out and uses your store's time zone. Its numbers should match the reports when the settings match.

Askshelfexample answer

What were net sales in October?

Net sales were $9,450 from 126 orders (average order value $75.00). Gross sales were $10,320, with $480 in returns and $390 in coupon discounts.Sales summary, 1–31 Oct 2026
An example on a demo store. In your store, the numbers come from your own orders.

To check it, open Analytics › Revenue, set 1–31 October, and compare the Net sales, Gross sales, Returns and Coupons totals. Then do the sum: $10,320 − $480 − $390 = $9,450. If it matches, you can trust that kind of answer going forward and only spot-check.

One known difference: Askshelf's today's orders lookup reads orders live rather than from Analytics, so for today it can show orders that Analytics hasn't picked up yet.

When an export-based AI disagrees with the report

If you uploaded a CSV to a general AI chat and its answer doesn't match:

  1. Ask it how many rows it read. Compare with the row count in the file.
  2. Ask which column it summed, by name.
  3. Ask it to list the five largest values it used. Spot one in the file.
  4. Check the export date. If the file is older than the report, they won't agree.

The trade-offs of this route are in ChatGPT vs a built-in store analyst. And because many mismatches come from how the question was framed rather than the tool, it's worth reading mistakes store owners make with their numbers.

For the wider picture of AI in your reporting, see using AI to analyze your WooCommerce store. The sales reporting use case shows what Askshelf answers about sales.

Common questions

How often should I check an AI's numbers?

Check the first few answers of each new kind of question carefully. Once a kind of answer has matched the report a few times, spot-check it now and then, and always check before a decision that costs money.

The AI and WooCommerce Analytics are a little different. Which is right?

Usually both, measured differently. Check the date range, time zone, which order statuses are counted and whether refunds are included. If those match and the numbers still differ, trust the report and look for the AI's mistake.

Why does Askshelf's today's orders count differ from Analytics?

Askshelf reads today's orders live, while Analytics fills its tables in the background and can lag a little behind. The gap usually closes once Analytics catches up.