How we score.
The trust score is arithmetic, not opinion. This page is the actual formula the registry runs — six components a store’s own data earns (≤80) plus a verified tier of collected external facts (≤20), computed from public data and refreshed every 24 hours. No store pays to be listed, scored, or re-scored.
What is StoreProfiles?
StoreProfiles is an independent registry of e-commerce stores. It scores 1,139Shopify stores out of 100 using only data those stores publish themselves, and prints the arithmetic behind every number. A score is read from a store’s own public product feed — how many distinct products it lists, and how many of them are photographed, described and priced — plus a domain-registration check and, where we managed to collect them, its published refund and shipping policies, a sampled product’s review rating and a timed server response. 171,089 products are on record and every store is re-scored every 24 hours. Each audit line links to the source it was read from. Nothing here is for sale: no paid tier, no placements, and claiming a profile adds 15 points but never unlocks editing the audit or the score. The honest limit: we host no customer reviews, so a store with poor service can still score well on catalog quality.
The formula
The store is live and its public product feed answers with at least one product. Every listed store clears this, which is exactly why it is worth five points and not twenty — rules v0.7 cut it, because a component everyone maxes cannot separate anyone. A reachable feed with zero products earns no score at all: the profile shows “Audit in preparation”.
Depth counts DISTINCT products — the same title repeated, or a product duplicated across variants, counts once. Since v0.7 the full 25 needs 300 effective products, not 100: 100 products score 8, 200 score 17, 300 or more the full 25. A feed of 100 rows with 2 real products scores 1 point here, not 25 — and the audit flags that duplication as a con on the profile.
The fraction of products with an image on the feed, times 15. Every product photographed = 15; half = 7.5. A product without an image URL counts against the whole catalog.
Only descriptions longer than 40 characters count — the floor for saying something real about a product. A bare title or a one-line “Great quality!” doesn’t clear it.
The fraction of products with a real price greater than zero, times 8. Missing prices and $0 placeholders both score nothing.
The owner proved control of the domain (a meta tag, about two minutes) and answers for the data publicly. The only component a store controls directly, and v0.7 raised it from 5 to 15: standing behind your own data publicly is the strongest trust signal a store can give us. It never unlocks editing the audit or the score.
Up to twenty points from facts beyond the feed, awarded only when we have collected them: +8 for published refund + shipping policies, +8 for a sampled product rated 4.3+ across 50 or more reviews, +4 for a sub-400 ms server response from our own probe. v0.7 moved weight here on purpose — these facts are where real stores actually differ. No fact collected means zero — never a penalty, and each point maps 1:1 to a verified “pro” on the profile.
score = on_record + catalog + images + descriptions + pricing + claimed + verified · max 5 + 25 + 15 + 12 + 8 + 15 + 20 = 100What a store’s own data can earn tops out at 80 (65 unclaimed, 80 claimed). The verified tier adds up to +20 from external facts we have collected — lifting the ceiling to 100. Across the 1,139 scored stores on record scores run 26 to 85, median 58; the top tenth starts at 73. See 04 for what the verified tier does and doesn’t count.
Worked example
A hundred products, fully photographed, described and priced — 48 before external facts, because depth now needs 300 products for full marks and being on record is worth only 5. The verified tier adds +8 for published refund + shipping policies; the review and speed points stay unearned, because the sampled product has a single rating (not 50+) and the origin answered in 1,071 ms (not sub-400). Claiming would add +15, for 71.
No points for sale
Every point comes out of the store’s own public feed — data anyone can open in a browser and recount. There is no editor to persuade and no judgment call in the pipeline.
A score moves only when the store’s data moves. Each day’s read is snapshotted, and the history is public — on every profile and in the JSON API.
Claiming unlocks a public reply under the audit and exactly +15 — accountability points. It never unlocks editing the audit, the facts, or the score. $0 placements sold — ever.
Limits of the verified tier
- Full review aggregation
Our review point reads structured ratings from one sampled product page, not every review across every platform. It confirms a real public rating exists and clears a bar — it is not a store-wide review average.
- Real-user (field) performance
The speed point is a single server-response measurement from our own probe, not Core Web Vitals collected from real shoppers on their own devices and networks. It rewards a fast origin, nothing more.
- Dispute & complaint history
Chargebacks, regulator actions and third-party complaint records. We do not ingest them, so they neither add nor subtract points today.
The verified tier is worth five points precisely because it stays narrow: we award only facts we can collect and cite, and we say what they are — a policy page, one sampled rating, one server-response measurement. When a signal above lands, the formula changes and this page changes with it. A store that has none of the verified facts is not penalised; it is simply scored by what its own data earns.
Data sources
- 1.1/products.json — the public product feedTitles, prices, images and descriptions — the same JSON anyone can open at store.com/products.json. We walk the whole feed once a day and store a sample. This is the sole input to the feed components (≤60 of the 100).
- 1.2/meta.json — store currencyThe store’s own currency setting, used to label prices on the profile. When the endpoint doesn’t answer, we display USD as a fallback — a display default, not a verified fact. Currency never affects the score.
- 1.3Policy pages · a sampled product · the homepageInputs to the verified tier (≤20): the store’s own refund/shipping policy pages, structured review data on one sampled product page, and a single timed request to the homepage from our probe. Each is re-collected on its own schedule and cited on the profile — the only source of points beyond the product feed.
Questions
Everything a product feed and a claim can prove tops out at 80. The last 20 come from the verified tier: +8 published refund + shipping policies, +8 a sampled product rated 4.3+ across 50+ reviews, +4 a sub-400 ms server response from our probe. Each is awarded only when we have actually collected the fact, and each maps to a verified pro on the profile. A store with none of them still scores by its own tier alone — no penalty for facts we haven't collected. Across the 1,139 scored stores on record scores run 26 to 85 with a median of 58. The top tenth of the fleet starts at 73.
Because no store has claimed its profile yet. 15 of the 100 points are the claim, and they cannot be earned by data alone — an unclaimed store therefore tops out at 85, which is exactly where the fleet maximum sits. The ceiling and its reason are printed on every profile, so nobody has to infer it from the scale.
Not since rules v0.8. The verified tier is only added once the catalog itself clears a quality bar — 32 of the 35 points for images, descriptions and pricing. The facts are still collected and still shown on the profile; they simply stop being worth points while part of the catalog has no photo, no description or no price. The bar deliberately excludes catalog depth: gating on size would penalise small brands for being small rather than for being careless.
Only the store’s own public data, at the next daily refresh. Add distinct products (up to the 300 that count — duplicates don’t), photograph them, write descriptions past 40 characters, fix zero prices. Scores fall the same way when data degrades — every store is re-scored on the same schedule.
Exactly +15 on the rules v0.8 scale, plus a public reply under the audit, a live trust badge, and partner-program controls. It never adds editing rights — the audit text and the score stay computed from the feed.
Claim the profile and reply publicly — the reply appears on the profile, next to the audit it answers. If a fact we cite is wrong, we re-collect the feed and re-score. The formula is not negotiable; the data behind it is checkable by anyone.