Turn real sales into social proof shoppers trust
Show a live, configurable "units sold" badge on your shop and product pages — built from real orders, with full control over what counts and where it shows.
The problem
Shoppers hesitate without proof that other people already bought the product. Odoo's shop and product pages show price, description, and reviews — but never how many units have actually sold. Merchants who want that marketplace-style trust signal must hire a developer or gamble on a near-identical third-party app with an undocumented "sold" definition and no per-product control.
The solution
Website Sales Count adds a live "units sold" badge to your shop listing and product pages. Pick exactly what counts as sold — confirmed, paid, or delivered — set a time window, and control visibility per product with thresholds, overrides, and a custom message, all from one Website Settings panel. No code, no cron, no guesswork.
Everything you need for trustworthy social proof
Every capability below is implemented in the module.
Real-Time Sold Count Badge
A "units sold" badge appears on the shop listing and product detail page, computed live from your orders in one batched query — no cron job, no stored snapshot to go stale.
Three Definitions of "Sold"
Choose whether the count reflects confirmed sale orders, paid/invoiced quantity, or delivered quantity — so the number always means what you say it means.
Configurable Time Window
Count all-time sales, or narrow the window to the last 30, 90, or 365 days to highlight recent momentum instead of lifetime totals.
Per-Product Visibility Override
Force any product to always show or always hide its badge, or leave it on "auto" to follow the website-wide threshold rule.
Threshold-Based Suppression
Set a minimum sold count before the badge appears, so slow-moving products never display a discouraging low number.
Manual Seed Value
Give a new or migrated product a credible baseline count that adds to its real sales, so launch day never shows a bare zero.
Custom Message & Badge Color
Write your own message template with a "{count} sold" placeholder, and pick from six badge color presets to match your storefront.
Variant-Aware Aggregation
The badge on a product template sums sales across all of its variants, so the number always reflects the whole product line.
Multi-Website Support
Running several storefronts from one database? Every setting is scoped per website, so each store can show a different basis, threshold, and message.
How it works
Enable in Website Settings
Turn on the master toggle and choose where the badge appears — listing, detail page, or both.
Choose What "Sold" Means
Pick confirmed, paid, or delivered as the basis, and set a time window that fits your story.
Fine-Tune Per Product
Override visibility, seed a baseline count, or write a custom message on any product.
Watch the Badges Appear
Conversion-boosting social proof shows up instantly on your shop and product pages.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
You choose the basis — confirmed sale orders, invoiced/paid quantity, or delivered quantity — and the module computes it live, in one batched query, whenever a page renders. There is no cron job or stored snapshot to go stale.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
Website Sales Count
A configurable units-sold badge built from real order data, with three definitions of sold, a time window, threshold suppression, per-product overrides and variant-aware aggregation.
Buy on Odoo App Store