At a glance
Product-count split by storefront publishing status:ACTIVE,DRAFT,ARCHIVED. The catalog hygiene number, are you running a tight catalog or sitting on accumulated draft sludge?
Calculation
Worked example
An AU SMB cosmetics brand on Shopify (Standard plan), single AUD storefront, ~3 years trading. Snapshot at 12 May 26.
Five things to notice:
- Draft share at 26% is unhealthy. Industry benchmark for active-cosmetics SMBs is
DRAFT< 8%. 158 drafts represent abandoned merchandising work: products created during a launch sprint, never published, slowly accumulating. Audit drafts older than 90 days quarterly, every draft is search-index pollution that slows admin and confuses staff merchandisers. Bulk-archive the ones that won’t ship. - Archived 5.3% is normal. Categories with seasonal cycling (cosmetics, fashion, food) typically run 3 to 8% archived. Archiving is the correct action for permanent discontinuation; it preserves order-history references without bloating the live catalog.
- Active 412 is the operational number. This is the catalog the customer can see (somewhere); it drives Total Products, search-index size, sitemap entries, and most CDN costs. Stores trying to grow SEO traffic should care about the quality of these 412 (each with full content) more than total count.
- The active-vs-published gap. Of the 412
ACTIVEproducts, perhaps 380 are published to Online Store (the gap is POS-only items, B2B-only items, or productsACTIVEbut with the Online Store toggle off). The card cannot show this gap; you need to drill intoproductPublicationsper product. Common cause of the gap: an admin user toggled “remove from Online Store” instead of moving the product toDRAFT, leaving itACTIVEbut invisible. - The 32 archived hide a quiet risk. A merchant returning these to the catalog (a comeback formulation, a re-launched range) must un-archive and re-publish to channels. Archived products don’t show up in product-search inside admin by default, so staff often don’t know archived products exist; the un-archive step gets missed and the relaunch ships with a half-built catalog state.
Sibling cards merchants should reference together
Product Status sits inside the catalog-hygiene cluster:Reconciling against the vendor’s own dashboard
Where to look in Shopify Admin:Products → All products → filter by Product status (top of the list) → toggle Active / Draft / ArchivedThe list shows products filtered to the chosen status; the count at the top of the table is the directly comparable figure. There is no dedicated chart for this in Shopify’s analytics suite; the product list is the source of truth. Other Shopify Admin views that look adjacent:
- Products → Collections: a curatorial layer on top of the catalog. A collection can include archived products (they just won’t render to shoppers); collection counts therefore differ from this card.
- Products → Inventory: variant-level, not product-level. Counts can be much higher (variants per product).
- Settings → Sales channels → (each channel): per-channel publication state. Different from product status; a product can be
ACTIVEand unpublished, orDRAFTand never published.
Cross-connector reconciliation:
Product Status is a Shopify-internal catalog metric. Cross-connector reconciliation is loose:
Known limitations / merchant FAQs
What’s a “good” mix of statuses? Category-dependent. Healthy targets:ACTIVE 85 to 95%, DRAFT < 8%, ARCHIVED 2 to 10%. Stores running annual seasonal cycles (fashion, gift, food) sit at the high end of ARCHIVED; stores with stable evergreen catalogs (homeware, office supplies) at the low end. DRAFT above 15% always indicates abandoned merchandising work that needs cleanup.
Why is “ACTIVE” not the same as “buyable on the website”?
Because Shopify separates product status from channel publication. A product is ACTIVE if it’s buyable on any channel; the website is just one channel. So a product ACTIVE and unpublished from the Online Store still counts as ACTIVE here while being invisible to web shoppers. To see “buyable on the website right now”, you need the per-channel productPublications query, which this card does not surface. The roadmap includes a Published to Online Store card; for now, use the Shopify Admin filter “Sales channel: Online Store, Published”.
What happens when I archive a product that has live orders / customer reviews?
The orders and reviews are preserved; archived products still render correctly on past order pages. The product is removed from search, collections, sitemap, and recommendations. Customer-facing review widgets typically continue to show reviews if cached; new reviews can’t be left because the product page returns 404. To re-list, un-archive (status moves to ACTIVE) and re-publish to the desired channels.
My catalog has 158 drafts, should I just delete them?
Probably not delete, archive. Shopify’s delete is permanent and can break historical reports if any of the drafts had ever been published or had inventory tracked. The safer cleanup pattern: bulk-archive drafts older than 90 days. They preserve their data and can be un-archived if you change your mind, but they stop polluting search and admin nav.
Are variants counted here?
No. The card counts Product.id rows, not ProductVariant.id. A product with 24 variants and status = ACTIVE is 1 row in ACTIVE. For variant-level counts, see Total Variants (planned).
Multi-currency stores, does the card change?
No. Product status is currency-agnostic; the card looks identical for a single-currency and a multi-currency store with the same catalog.
Subscription products, do they have a different status?
No, they use the same ProductStatus enum. The “subscription” attribute lives in the variant’s selling-plan associations, not in product status. A subscription product can be ACTIVE, DRAFT, or ARCHIVED like any other.
Shopify Plus vs basic plan, behavioural differences?
Largely none for the status enum itself. Plus stores running multiple stores in one organisation can have the same product replicated across stores, each with its own status; Combined Customer Records does not consolidate products. Basic stores see one catalog with one status per product.
B2B vs DTC, do statuses behave differently?
Status applies to the product regardless of B2B/DTC. A product ACTIVE and published only to the B2B Edition channel is invisible to DTC shoppers but still counts ACTIVE. The card cannot show this nuance; a B2B-heavy store should drill into channel publication state to understand catalog visibility per audience.
Refresh cadence?
Webhook-driven, near real-time. Status changes propagate within 5 to 15 minutes. Bulk operations (archive 5,000 products at once via the bulk editor) can take 5 to 30 minutes to fully reflect.
The card shows products I don’t recognise, where did they come from?
Three usual causes: (1) an app installed silently created products (review-import apps, marketplace-sync apps, gift-card apps create their own products), (2) a CSV import ran with duplicate-creation enabled, (3) historical migration artifacts. Cross-reference the Created date and Created by in the Shopify product list to identify the source; the count is correct, the cleanup target is the unknown vendor.
Action playbook when draft share is unexpectedly high:
- Sort drafts by Updated date ascending; the oldest are almost always abandoned work.
- Bulk-select drafts older than 90 days. If there’s no obvious reason to keep them, archive in bulk.
- For drafts younger than 90 days, ask the merchandising team if any are pending launch. Convert to a launch list, schedule, and either publish or archive.
- Audit the Created by field; if a single staff member or app created most drafts, fix the root behaviour (training, app config, removed app).
- Set an internal SLA: drafts older than 60 days require justification or get archived. Bake into a monthly catalog-hygiene review.