At a glance
The catalog completeness card. Tracks the percentage of products in the BC catalog that have all critical fields populated: SKU, price, weight, image, description, category, and stock-tracking. Catalog completeness is invisible until it costs money: a SKU without a weight breaks shipping calculation; a SKU without a category drops out of category-page navigation; a SKU without an image converts at near-zero. BigCommerce’s bulk catalog API differs from Shopify’s products endpoint in a meaningful way: BC’s catalog is variant-first (every variant has its own SKU, weight, price), where Shopify’s is product-first (variants share parent metadata). This card audits each SKU individually, surfacing variant-level gaps that often hide on Shopify-style audits.
| What it counts | COUNT(SKUs WHERE all_critical_fields_populated) / COUNT(SKUs) evaluated in real-time on the current catalog snapshot. Critical fields are: sku (non-empty), price (non-zero), weight (non-zero), images[] (at least one), description (>50 characters), categories[] (at least one), inventory_tracking (set if inventory_level > 0 is needed). |
| VAT / tax treatment | n/a, this is a catalog audit metric. |
| Shipping | n/a; weight gaps will break shipping calculation. |
| Discounts | n/a. |
| Refunds | n/a. |
| Cancelled / voided orders | n/a. |
| Currency | Multi-currency stores need each currency-specific price field populated; missing per-currency price is a coverage gap. |
| Channels / sources | Per-channel coverage matters on BC. A SKU might be complete for the web channel but missing the Amazon-specific listing fields (Amazon ASIN, Amazon category mapping). The card defaults to web (channel_id = 1) coverage; toggle to per-channel for full audit. |
| BC bulk catalog API caveat | BigCommerce’s Catalog API v3 returns up to 250 products per page with a separate variants endpoint (/catalog/products/{id}/variants). Coverage audits must walk both endpoints to catch variant-level gaps; products that look complete at the parent level frequently have variants missing weight or images. |
| B2B Edition price-list caveat | Stores using B2B Edition customer-group price lists need each price list populated. A SKU with only the public price set, no B2B price, will show as a coverage gap on the B2B portal even though it appears complete on web. |
| Time window | RT (real-time, refreshed each catalog sync; typically every 15-30 minutes). |
| Alert trigger | <95% (SKUs missing). Most healthy stores sit at 97-99%; below 95% indicates structural catalog hygiene issues. |
| Sentiment key | sku_coverage |
| Roles | owner, operations |
Calculation
Calculated automatically from your BigCommerce data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A UK home-fragrance brand on BigCommerce, 412 SKUs in the catalog, snapshot 13 May 26.| Critical field | SKUs populated | Coverage % | Gap impact |
|---|---|---|---|
| SKU code (unique) | 412 / 412 | 100% | n/a (cannot exist as catalog item without) |
| Price | 408 / 412 | 99.0% | 4 SKUs uncheckoutable |
| Weight | 386 / 412 | 93.7% | 26 SKUs break shipping calculation |
| At least one image | 401 / 412 | 97.3% | 11 SKUs have no visual; convert at ~5% normal rate |
| Description >50 chars | 372 / 412 | 90.3% | 40 SKUs have minimal SEO surface |
| At least one category | 405 / 412 | 98.3% | 7 SKUs missing from category navigation |
| Inventory tracking enabled | 388 / 412 | 94.2% | 24 SKUs may show as in-stock when sold out |
| All critical fields populated | 352 / 412 | 85.4% | 60 SKUs have at least one gap |
- 85.4% blended coverage triggers the alert. This sounds bad but most BC stores see this once they actually audit; field-by-field 90%+ rates feel healthy until you intersect them and find 60 SKUs with at least one gap.
- Weight is the #1 gap on most BC stores. 26 SKUs without weight = 26 SKUs where shipping calculation falls back to a default rate, almost always wrong (overcharging customers and causing checkout abandonment, or undercharging and absorbing shipping cost). This is the highest-leverage gap to close: weight data takes 30 seconds per SKU.
- Description gap (40 SKUs at 90.3%) is the SEO leakage. Each missing description is a category-page item that ranks poorly in search. Use AI generation as a first pass (BC has plugins for this); aim for 100-200 words per SKU minimum.
- The 4 SKUs without price are catalog failures. Customers can’t check out; product-page traffic is wasted. Audit these immediately; either set the price or unpublish the SKU.
- Variant-level gaps hide here. The 412 SKU count includes variants; on a parent-product audit (Shopify-style), the gap rate would look much better (~95%+). BC’s variant-first model is more honest because each variant must independently satisfy fulfilment requirements.
- Fix the 4 SKUs without price today. They are catalog failures and pure leakage.
- Bulk-update weight data for the 26 missing SKUs. Use the Catalog v3 bulk-update API or the BC CSV export/import flow.
- Run AI description generation on the 40 missing-description SKUs. Even rough first-pass content lifts SEO surface meaningfully.
- Add at least one image to the 11 missing-image SKUs. Use BC’s free product-photography library or a quick photo-shoot for hero SKUs.
- Audit category mapping for the 7 missing-category SKUs. They’re invisible on category pages, drop traffic to zero.
- Schedule a quarterly catalog audit cycle to keep coverage above 95%. New SKUs accumulate gaps over time; without periodic audit, coverage degrades.
Sibling cards merchants should reference together
| Card | Why pair it with SKU Coverage |
|---|---|
| BC Missing Descriptions | The dedicated description-gap card. SKU coverage rolls description into a single field; that card breaks it down. |
| BC Missing SEO | SEO-specific completeness (meta titles, alt text, open-graph). |
| BC Product Status | Flags inactive vs active SKUs. Inactive SKUs are sometimes the source of coverage gaps (legacy items still indexed). |
| BC Inventory Alerts | Coverage feeds inventory accuracy; SKUs without inventory tracking show false in-stock. |
| Email Health | Customer-side data hygiene parallel; this card is product-side data hygiene. |
| BC Top Products | Hero SKUs should always be 100% complete; cross-reference to confirm. |
| BC Bottom Products | Tail SKUs are often the source of coverage gaps; this is where to focus or where to delist. |
| Collection Health | Category-page completeness. SKUs missing categories don’t appear; fix here cascades. |
| BC File Types | Image-asset audit. Image gaps in SKU coverage tie back to underlying file management. |
| Fulfillment Rate | Weight gaps cause shipping-calculation errors which cause cancellations; coverage gap leads to fulfilment problems. |
Reconciling against the vendor’s own dashboard
Where to look in BigCommerce’s own dashboard: BigCommerce doesn’t expose a SKU-coverage rollup natively. The closest tools:- Catalog audit: BC Control Panel → Products → View Products. Use the column toggles to surface price, weight, image count, and category. Sort or filter for missing values.
- Bulk export: Settings → Data Solutions → Export → Products. The CSV exposes every field; pivot in spreadsheet to find gaps.
- Per-channel completeness: Channel Manager → (channel) → Products tab shows channel-specific listing health (Amazon ASIN mappings, Facebook Shop fields).
| Reason | Direction | Why |
|---|---|---|
| Field-completeness definition | Either | We treat description as “populated” if >50 chars; BC’s catalog health may have a different threshold (10 chars or any non-empty). |
| Variant inclusion | Either | We include variants as separate SKUs; BC’s product list view aggregates parent-product info. Variant-level gaps inflate our denominator and thus our gap count. |
| Inactive SKUs | Either | We default to active SKUs only; BC catalog views may include hidden/inactive items. |
| Sync lag | Trivial | Catalog sync every 15-30 min; recently edited SKUs may not be in our snapshot yet. |
| Channel-specific fields | Either | Per-channel listing fields (Amazon ASIN, Facebook category) are channel-specific; web-only audit ignores them. |
Known limitations / merchant FAQs
My catalog has 412 SKUs but BC product list shows 250, why the difference? We count variants individually; BC’s product list aggregates by parent product. A product with 5 size variants is 5 SKUs in our count, 1 in BC’s product list. Use the variant-level export for direct comparison. Why is weight the most-missing field? Because weight is required for shipping calculation, isn’t visible on the product page, and merchants forget to populate it for digital, gift card, or service-style products that don’t actually ship. BC’s catalog allows weight = 0 but most carriers reject 0-weight shipping requests; the safe default is 0.1 lb / 50g for non-physical SKUs. Should I worry about missing descriptions? Yes for SEO and conversion. A SKU with only a 20-char description ranks poorly on Google, has minimal information for the customer, and converts at 30-50% of the rate of a complete-description SKU. Fix description gaps with AI generation as a first pass, then human-edit the top 20% by traffic. My coverage was 95% last month and now it’s 85%, what happened? Almost certainly a bulk import added new SKUs without all fields populated. Check Settings → Data Solutions → Import History; new SKUs from CSV imports often miss weight, image, or description. Audit the most-recent import. Can I see which specific SKUs are missing fields? Yes via Ask Viq: “list SKUs with missing weight”. Returns a CSV of SKU codes and the gaps; useful for bulk-edit workflows. My variant SKUs all show as missing description, even though the parent has one. Why? BC stores description at the parent product level by default; variants inherit. Our coverage audit checks the variant directly; if you’ve explicitly set a variant description and it’s empty, we flag the gap. Most stores don’t need variant-level descriptions; configure the audit to inherit from parent in card settings. Should the alert threshold be 95% or 99%? Depends on catalog size. Small catalogues (<200 SKUs): 99% achievable, 95% is sloppy. Large catalogues (10k+ SKUs): 95% is realistic, 99% takes systematic ops investment. Tune to your catalog size. Why is my Amazon channel showing lower coverage than web? Amazon listings require additional fields (ASIN, Amazon category, FBA flag) that web doesn’t. A SKU complete for web may be missing Amazon-specific fields. Check Channel Manager → Amazon → Products tab. My B2B Edition portal shows missing prices but I have a B2B price list, why? The audit checks the default price list. If your B2B price list isn’t set as the customer-group default, SKUs may show no price for B2B-eligible customer groups. Check Customer Groups settings. Can I exclude inactive SKUs from the audit? Yes, that’s the default. We only auditis_visible = true SKUs. To force-include inactive: card settings → “Include all SKUs (including inactive)”.
How does this interact with bulk catalog imports?
A bulk import drops coverage immediately if the imported CSV is missing fields. Build CSV templates with all critical fields as required columns; reject imports that don’t conform. Most import-related coverage drops are preventable.
Should I delete SKUs that are persistently missing fields?
If a SKU has been live for 30+ days with persistent gaps, the better question is “is this SKU worth selling?”. Most chronic-gap SKUs are legacy items with no recent sales; mark them inactive and let the catalog cleanup happen organically.
My coverage dropped right after a Channel Manager activation, why?
Activating a new channel adds new fields to the audit (channel-specific listing data). The same SKUs that were complete for web become incomplete for the new channel. Plan a coverage-completion sprint immediately after activating any new channel.
Does this card respect store time zone?
Snapshots are taken at sync time (UTC). The “current” coverage is always within 15-30 min of real-time regardless of time zone.
Can I track coverage over time?
Yes via Ask Viq: “show SKU coverage trend over last 90 days”. Useful for spotting hygiene degradation.