TLDR - If you’re seeing “none” values for products or missing item-specific sales data in your product reports after migrating to the new Shopify analytics framework (updated October 2024), here’s what’s happening and how to fix it.
After our store recently completed migration to Shopify’s October 2024 analytics framework, we discovered our sales reports changed how they reference product information. Using the Shopify-built “Total sales by product variant” report that we’ve historically used now causes $1,000s in sales appearing as “none” across all product fields, making it impossible to analyze which discontinued products had sold.
If you’ve deleted discontinued products that have sales data (or use a third-party POS integration that deletes products in Shopify when SKUs are removed), and use the Shopify-built “Sales by product” reports as they exist today, you may see:
- Sales showing as “none” for product title, vendor, or type
- Missing revenue attribution for discontinued items
- Incomplete historical product performance data
The previous analytics system captured product details at the time of sale (a snapshot), preserving that for “Sales by Product” reports. The current analytics system pulls product details from current product records (a dynamic lookup). When a product is deleted, there’s no current record to reference, so those fields now show as “none” or null.
From Shopify’s documentation (link below):
“The previous analytics default to using a product’s title, variant title, SKU, and vendor at the time of sale. The current Analytics default to using a product’s current title, variant title, SKU, and vendor.”
To see all sales by product, use the “Product title at time of sale” dimension instead of “Product title” when building your reports. This field preserves the product information as it existed when the sale occurred, regardless of whether the product has been deleted.
How to rebuild reports -
- Go to Analytics > Reports
- Click New exploration (or edit an existing saved report)
- In the Dimensions menu, replace:
“Product title” with “Product title at time of sale” and
“Product variant title” with “Product variant title at time of sale” (if using variants) - Keep your existing metrics (gross sales, net sales, etc.)
- Save your updated report
If you prefer using ShopifyQL, here’s a rough template:
FROM sales
SHOW net_items_sold, gross_sales, discounts, sales_reversals, net_sales, taxes, total_sales
GROUP BY product_title_at_time_of_sale, product_vendor, product_type WITH TOTALS
SINCE 2025-01-01 UNTIL 2025-12-31 (use your own desired date)
ORDER BY net_items_sold DESC
(Note - the ‘returns’ field on the current reporting will be deprecated in May 2026 and is replaced with ‘sales_reversals’)
Extra Notes -
- Finance reports still use “at time of sale” by default, so they’re unaffected
- If you have more than 1,000 product rows, export the data or use smaller date ranges to see complete results
- Consider using “Archived” status instead of deleting products (archived products preserve all historical data relationships and will keep your analytics intact)
*Shopify’s analytics update documentation: https://help.shopify.com/en/manual/reports-and-analytics/discrepancies/analytics-updates
We hope this helps other merchants with the same issue recover their historical product sales data.