I run PriceProven, a price-history site for AliExpress. Side project, $0 revenue, domain registered last month. This post is about a decision I did not expect to matter, and which turned out to be most of the work.
When you build a product on data you have to collect yourself, the tempting framing is coverage: how many things am I tracking, how many days of history do I have. Those are the numbers that end up on the homepage. But the number that decides whether anyone can actually use your data is a different one - what did you throw away, and can you say why in one sentence a stranger will accept.
Three exclusions we run, and what each one costs:
Overnight falls steeper than 30% are dropped. On AliExpress, a listing that loses three quarters of its price overnight has usually changed which variant it quotes - a different pack size, a different colour - rather than actually cut its price. From the outside I cannot tell those two apart. So they are excluded, and the count of what was excluded is printed on the page itself; in the most recent reading that was 34 listings. Cost: our "biggest drops" list is less dramatic than it could be. Benefit: nothing on it is a lie.
A shared product title is not proof of a shared product. We track cases where two shops carry the same title and one charges at least double the other - 227 of them. Only 52 of those pairs use the identical image file, which is the only thing that demonstrates it is literally the same photograph. For the remaining 175 we have a shared title and nothing more. So the "same photograph" label sits on the 52 rows that earned it, rather than over the whole list. Cost: the headline number stops being 227. Benefit: nobody can take the page apart.
Nothing is derived from the seller's crossed-out price. That number is the thing being checked. Using it as an input anywhere would make the whole site circular. Every figure is counted against prices we recorded ourselves.
Two things I learned the hard way.
First: an exclusion you do not publish is indistinguishable from a mistake you are hiding. Putting "34 excluded, here is the rule" next to the number costs one sentence and removes an entire class of objection before anyone raises it.
Second, and this is the one that actually bit me: the number is almost never the error. Every figure we have published was read live and was correct. What went wrong, twice, was the sentence around it - a true number sitting next to a label that implied more than the number supported. So the check after writing anything containing a figure is no longer "is this number right". It is "does the surrounding wording claim exactly what this number supports, and nothing more". Those are different questions and only the second one catches this.
If you are building anything data-shaped: write the exclusion rules down before you need them, publish them next to the output, and count what they removed. It reads as caution. It is actually the only thing that makes the rest of the number worth anything.
Happy to go into the method in the comments.