Skip to main content
Card class: StandardCategory: Ecommerce Platform
The number of products whose status is set to disabled, so they exist in the catalogue but are not visible or buyable on the storefront.

At a glance

A disabled product in OpenCart is a real catalogue entry that has been switched off: it keeps its data, images, and history, but it does not appear on the storefront and cannot be bought. Some disabled products are intentional (seasonal lines, discontinued items kept for reference, drafts being prepared). Others are accidents (a bulk edit that flipped the wrong rows, an import that defaulted status to off, an extension that disabled items it should not have). This card counts them so a creeping or sudden rise in disabled products gets noticed before it quietly removes sellable range from the store.
What it countsProducts whose status is disabled (status off) in oc_product. OpenCart’s product status flag controls storefront visibility.
Storefront effectDisabled products are hidden from the storefront and category pages and cannot be added to cart. They do still exist in the admin and in the database.
Out of stock vs disabledDifferent things. An out-of-stock product is enabled but has zero quantity; a disabled product is switched off regardless of stock. This card counts disabled status, not stock level.
Variants / optionsOpenCart options live under the product. Disabling the parent product disables all of its options; this card counts the product, not its option rows.
Currency / refundsNot applicable. This is a catalogue count, not a money metric.
Multi-storeA product’s status is shared across store_id storefronts, but its store assignment governs which stores it would appear on. A disabled product appears on none.
Time windowRT (live count)
Alert triggerNone configured by default
Rolesowner, operations

Calculation

COUNT(products) WHERE status = disabled

Worked example

A UK auto-parts store on OpenCart 4.x with 6,800 products in the catalogue. The owner normally keeps around 120 products disabled: discontinued part numbers retained for reference and a handful of seasonal lines. On 14 Mar 26 a supplier price-list import runs.
DateTotal productsDisabledDisabled %Note
13 Mar 266,8001201.8%Normal baseline
14 Mar 26 (after import)6,8005407.9%Jump worth investigating
15 Mar 26 (after fix)6,8001241.8%Restored
What’s interesting here:
  1. The import disabled 420 live products by accident. The supplier CSV had a status column that mapped blank cells to “disabled”, and 420 in-range parts had blank status in the file. The import obediently switched them off. Those 420 sellable products vanished from the storefront overnight.
  2. There is no error to catch this, only a count. Nothing broke. No error log entry, no failed order. The products simply stopped appearing. Without a count to watch, the first sign would have been a slow drop in orders for those lines, days later.
  3. Disabled is not out of stock. Every one of the 420 had stock in the warehouse. A stock report would have shown them as available; only the status flag was wrong. That is why this card is separate from Out-of-Stock Products.
  4. The fix was a re-import with corrected status mapping. Re-running the import with the status column mapped correctly (or omitted) flipped the 420 back to enabled and the count returned to its 124 baseline. The lesson: never let an import write the status column unless you mean it to.

Sibling cards merchants should reference together

CardWhy pair it with Disabled Products
Total ProductsThe denominator. Disabled count only means something next to how big the catalogue is.
Out-of-Stock ProductsThe other reason a product is unbuyable. Disabled is a status flag; out of stock is a quantity. Read both to know your true sellable range.
Empty Categories (0 products)Mass-disabling products can empty whole categories, creating dead navigation.
Products Missing SKU / ModelCatalogue-hygiene siblings. A messy import that disables products often mangles SKU fields too.
Installed Extensions / ModulesAn extension can disable products programmatically; a recent install can explain a sudden jump.
OpenCart Inventory vs Marketplace ListingsA product disabled in OpenCart but still listed on a marketplace causes oversell risk.

Reconciling against OpenCart

Where to look in the OpenCart admin: Catalog → Products shows a Status column (Enabled / Disabled) for every product. There is no single “disabled count” tile, so you read it by filtering or sorting the product list on status. A bulk-edit extension, if installed, can also report counts by status. OpenCart admin views that look like the same number but aren’t:
  • Catalog → Products total count is the whole catalogue, enabled and disabled together. It is the denominator, not this card.
  • An “out of stock” filter counts zero-quantity products, which is a different condition from disabled status.
  • The storefront category counts show only enabled, in-stock products, so they understate the catalogue and tell you nothing about disabled items directly.
Why our number may legitimately differ from the OpenCart admin:
ReasonDirection of divergence
Multi-store store assignment. A product can be enabled but assigned to no store, or to a different store. Status and store assignment are separate fields; the admin filter you use may conflate them.Either direction
Timezone. Not a factor for a live count, but the moment of a recent bulk change can appear at a slightly different time due to UTC vs store timezone.Cosmetic timing
Draft vs disabled. Some workflows treat disabled as “draft”. The count includes all disabled products regardless of intent.Card may look higher than “truly removed” products
API / DB sync lag. A status change made seconds ago may not yet be reflected.Self-resolves at next sync
Cross-connector note: if you syndicate products to a marketplace, a product disabled in OpenCart should also be pulled from the marketplace. If it is not, you can take orders on the marketplace for an item your storefront has switched off, which usually means the listing is now out of step with source. Compare with OpenCart Inventory vs Marketplace Listings.

Known limitations / merchant FAQs

Is a disabled product the same as a deleted product? No. A disabled product still exists in oc_product with all its data, history, and images; it is simply hidden from the storefront and cannot be bought. A deleted product is gone. Disabling is reversible with a single status flip; deletion is not. Disabled vs out of stock, what is the difference? Disabled is a status flag (the product is switched off). Out of stock is a quantity (the product is on but has zero stock). A disabled product is invisible regardless of stock; an out-of-stock product is usually still visible, often with an “out of stock” label. They are tracked by separate cards on purpose. Why no alert on this card? Because a “right” number of disabled products is store-specific. Many stores legitimately keep hundreds disabled (seasonal, discontinued, draft). A blanket threshold would be wrong for most. Watch the count for sudden jumps instead; a doubling overnight is the signal, and pairing it with Total Products gives you the ratio. An import disabled hundreds of products, how do I undo it? Re-run the import with the status column corrected or omitted, or bulk-edit the affected products back to enabled. The data was never lost, only the status flag changed. The durable fix is to stop imports writing the status column unless that is the intent. Do disabled products still count in my total product count? Yes. Total Products counts the whole catalogue. This card is the disabled subset of that total. Can an extension disable products on its own? Yes. Some inventory, feed, or cleanup extensions disable products programmatically (for example, auto-disabling zero-stock items). A sudden jump right after installing or configuring an extension is a strong hint that the extension did it. Check Installed Extensions / Modules. My product is enabled but still not showing on the storefront, why? Status is only one of several gates. The product also needs a store assignment, a category, a date-available that is not in the future, and (if Subtract Stock applies) stock or backorder allowance. This card counts the status flag only; the other gates are separate.

Tracked live in Vortex IQ Nerve Centre

Disabled Products is one of hundreds of KPI pulses Vortex IQ tracks across OpenCart and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.