SoldCount

Methodology

How we count

How we capture public TikTok Shop data, turn it into sold-velocity, and label every number with its confidence and freshness — and the lines we refuse to cross.

How we count the sold number

We read public TikTok Shop product pages, and only public pages. No seller login, no API keys, no writes to anyone’s shop — the whole system is read-only and needs no authentication.

Every listing is read two ways. The moment you open a listing with the extension, we take an in-page reading of the public “sold” counter and record it as a snapshot. After that, a backend job re-reads the page on a set interval — about every 6 hours by default. That interval is a configuration value, not code: we can change the cadence without shipping a new build.

The public counter is cumulative — it only ever climbs as a listing sells. To turn it into a daily sold number we difference successive snapshots: this reading’s counter minus the previous one, within a single unbroken stretch of tracking. We never add the counter up — summing a running total would report many times the real number, because that is not what the counter measures.

If a day has no reading, that day is a gap — a blank in the series, never a zero. A missing capture is missing data, not a day with no sales.

Confidence and freshness on every number

Every number we show carries two labels: a confidence band — high, medium, or low — and a freshness stamp saying how long ago we captured it. Confidence starts from how much we’ve captured and steps down whenever a known weakness is present.

BandWhat it takes
HighA long, fresh, reset-free history on a fine-grained counter — on the order of two weeks of capture days, read within the last day, with no recent listing reset.
MediumA solid but shorter or slightly older window — roughly a week of days, read within a few days.
LowThinner data that still clears the bar to show a number at all.

Freshness

Freshness is simply how old the reading is — “captured N hours ago”. Past about a day the stamp turns amber, to warn you the number may have moved since we last looked.

Why we sometimes show no number

We show a sold number only when the active tracking segment has at least 7 distinct capture days AND spans at least 7 days, inside a 30-day lookback. We also refuse outright when the public counter is too coarse to read the change over that window.

When the data doesn’t clear that bar, we show the reason instead of a guess.

Take a listing we started tracking 12 days ago but have captured on only 4 distinct days. Four is below the seven we require, so the page shows:

tracking started 12 days ago, 4 captures — check back soon

— not a number. That is the honesty contract working as intended.

Why a counter can drop, and why “200+” is a lower bound

Why a counter can drop: a listing can be relisted, have its variants merged, or otherwise reset — and the public counter falls. When we detect a drop we treat it as a break in the history: we start a fresh segment and never compute across the break. A reset is a new chapter, not negative sales — we emit zero negative values, ever.

While a fresh segment is still young, we say “Listing reset on <date> — counting fresh” instead of showing a velocity we can’t yet stand behind.

Why “200+” is a lower bound: small counters are shown in coarse steps — a listing might display “200+”, meaning at least 200. We treat a coarse cap as a floor, not a reading, and won’t infer sales from it until the counter actually proves it’s moving (two increases in a row). A rounded band never fabricates velocity.

The public counter’s own resolution coarsens as sales grow (illustrative):

CounterResolution
≈ 700 soldshown to the single unit
≈ 10,000 soldrounded to the nearest 100
≈ 100,000 soldrounded to the nearest 1,000
≈ 1,000,000 soldrounded to the nearest 100,000

What we never claim

We show only what a public product page can honestly support. When a public page can’t show something honestly, we don’t guess it.

  • No profit, fees, or P&L.

    No settlement, fee, COGS, or refund data — we never present a figure as revenue.

  • No inventory truth.

    We can’t see a seller’s real stock.

  • No ads or attribution.

    A different data plane.

  • No creator or affiliate data.

  • No compliance or account-health calls.

  • No repricing. No writes. Ever.

    We arm your decision with the band and the velocity — we never set your price and never touch your shop.

Read-only — SoldCount never touches your shop.

Who we are

By the SoldCount team

SoldCount is an independent tool built by a small team who got tired of finding out too late that a competitor had moved. We read public TikTok Shop data — read-only — and label every number with its confidence and freshness.

We don’t award ourselves badges or cite proof we don’t have. If a number isn’t there yet, we tell you why.

Questions about the method? Contact us.

Watch any TikTok Shop listing — with the receipts.