How We Calculate Retailer Markup Without Conflict of Interest
The methodology behind the CaratHunter leaderboard and why we can publish what most comparison sites cannot
Every retailer we rank in our markup leaderboard pays us exactly nothing. No commission on referred sales, no placement fees, no preferred partner arrangements, no data sharing agreements that create soft obligations. The leaderboard is what it is because the only people it has to serve are buyers.
That's unusual enough to warrant an explanation.
Why comparison sites can't publish this
Most affiliate comparison sites work on a simple model: they send you to a retailer, you buy something, they get a percentage. That structure is not inherently dishonest, but it creates a real problem when you try to rank retailers by price. If your bottom-ranked retailer is also your highest-commission partner, you have a conflict. Some sites manage it by not ranking at all, presenting every retailer as equally valid. Others manage it by quietly omitting expensive retailers from the index entirely, so the conflict never surfaces.
We have none of those relationships. CaratHunter takes no commissions from anyone. Retailers cannot pay to appear in our index, cannot pay to improve their position, and cannot pay to be excluded. Our index currently covers more than 110 retailers across 14 million active listings. Retailers appear because they're in the market; they rank where the data puts them.
That's the structural argument for independent diamond comparison. Everything else is methodology.
The match methodology, step by step
The core calculation is a matched stone comparison. We don't compare average prices across a retailer's full inventory, because retailers stock different quality distributions. A retailer that specialises in D Flawless stones will look expensive against one that focuses on J SI2, even if their margins are identical. Averaging across that mix tells you nothing useful about pricing behaviour.
Instead, we isolate comparable stones. For any given specification (shape, carat weight, colour grade, clarity grade, cut grade, fluorescence level, certificate lab), we find every stone in our index that matches within defined tolerances. We then compute the median price across all matching stones from all retailers. That median becomes the market reference price for that specification.
A retailer's markup percentage is the amount by which their prices sit above or below that median, averaged across all their matched stones. A retailer sitting at zero prices exactly at the market median. Positive means more expensive than median; negative means cheaper.
Three things make this harder than it sounds.
A stone only enters the comparison if we have at least a minimum number of comparators from other retailers. A stone with no meaningful comparators has no reliable market reference. We exclude it rather than estimate one from insufficient data.
We weight the comparison by specification frequency. Round 1.0ct G VS2 Excellent cut stones exist in quantity across the index. Pear 2.5ct D IF stones are rare. A retailer with unusual inventory shouldn't be penalised by a comparison pool too thin to be meaningful, and they shouldn't appear artificially cheap because we only had two comparators for a niche specification.
Prices change. A stone listed at $4,800 last Tuesday might be $5,100 today, or sold and gone entirely. We pull live prices, and we only count a stone in the comparison if the price was updated within our freshness window. Stale prices don't enter the calculation.
Who's in the index
The depth of the index matters as much as the methodology. A comparison against two retailers is barely a comparison. Against more than 110, with the inventory volumes below, the median price for any specification is a genuine market signal, not an artefact of a thin sample.
| Rank | Retailer | Active listings |
|---|---|---|
| 1 | Yorxs | 2,109,977 |
| 2 | Adiamor | 2,077,575 |
| 3 | Taylor and Hart | 1,880,333 |
| 4 | Rare Carat | 1,873,267 |
| 5 | B2C Jewels | 1,438,055 |
| 6 | Loose Grown Diamond | 1,433,241 |
| 7 | Cape Diamonds | 1,247,872 |
| 8 | Brilliance | 1,212,410 |
| 9 | Brilliant Earth | 837,405 |
| 10 | Reve Diamonds | 771,463 |
| 11 | Novita Diamonds | 707,660 |
| 12 | Friendly Diamonds | 707,612 |
| 13 | RockHer | 637,610 |
| 14 | Moon Ocean | 608,940 |
| 15 | William & Sons Jewelers | 564,148 |
The top 15 retailers by listing volume account for more than 19 million active listings between them, before the remaining 95 plus retailers in the index contribute their inventories to the comparison pool.
Listing volume doesn't correlate with price position. Some of the largest retailers in the index are among the most competitively priced. Some of the smaller ones charge meaningfully above median. Volume tells you who has the inventory; markup tells you what they're charging for it.
The density matters for a subtler reason too. The more comparators we have for a given specification, the tighter the median estimate, and the more confident we can be that a retailer pricing 15% above median genuinely is 15% above median, and not just 15% above a thin sample that happened to be cheap. Scale validates the signal.
How we validate the matches
Methodology documents are easy to write. Verification is harder.
Each quarter, we run a sample audit of matched stone pairs. We pull a random sample of stones that were counted in a retailer's markup calculation, then verify four things: that the stone still exists at the listed retailer, that the price in our system matches the price on the retailer's site at the time of audit, that the specification match we assigned is genuinely comparable (same shape, consistent grading, same certificate lab), and that the stone wasn't sold and relisted as a different product between our last crawl and the audit date.
We look for two failure modes. Price staleness occurs when a stone was listed at one price but has since been updated and our system hasn't caught the refresh. Specification drift occurs when a stone has been relisted with a changed description that no longer matches the comparators we assigned it to.
Isolated mismatches get corrected. When we find a pattern across multiple stones from the same retailer, we review our data ingestion process for them and, if necessary, pause their ranking until the quality issues are resolved.
We don't publish the raw audit pass rates because the comparison across retailers isn't fair. A retailer that updates prices multiple times per day will show a cleaner audit trail than one that updates weekly, and that difference reflects update frequency, not accuracy. What matters is whether the prices we use in the markup calculation are real and current. Our minimum confidence threshold is absolute: if a retailer's data quality falls below it, they don't appear in the rankings.
What changes a retailer's rank
Four things move positions in the leaderboard.
Pricing decisions are the most direct lever. A retailer that reprices aggressively downward will climb. One that quietly inflates margins while the rest of the market holds steady will fall. We recalculate continuously, so significant repricing shows up quickly.
New retailers entering the index can shift the median for any specification, because the comparison pool gains more data points. In practice, the effect on existing rankings is small unless the new entrant is very large or prices very differently from the established pool. We add new retailers when they meet our data quality and listing volume thresholds, which means the bar is the same for a major international chain as for a small specialist.
Coverage expansion moves rankings more quietly. If a retailer's full catalogue isn't yet in our system, their markup is calculated on whatever we've indexed so far. As ingestion improves, the picture sharpens and their rank adjusts. We're continuously expanding coverage across the existing 110 plus retailers, and that work affects rankings as it proceeds.
Retailers leaving the index affect everyone else's rankings through the median recalculation. When a retailer departs, their stones are removed from every comparison pool and the median resets. If the departing retailer was cheap, median prices edge up across the affected specifications. If they were expensive, medians come down. At our current index size, neither shift is dramatic, but it's real and we account for it.
None of this is manipulable by retailers. They can't pay to change their ranking, can't request exclusion from a comparison category, and can't negotiate their placement. Repricing is the only lever they have. That's how it should work.
What we don't measure
The markup calculation is clear about what it measures and what it doesn't.
We compare prices, not stone quality beyond the certificate grade. Two stones with identical GIA grades can look meaningfully different in person: face-up colour, light return, contrast patterns, proportions the grading lab doesn't capture. A retailer that curates well-cut stones carefully might carry a higher markup than one that lists anything with the right grade on paper, and part of that premium could be deserved. Our rankings reflect what you pay relative to market. Your own assessment of the stone, and ideally a look at its imaging and proportions data, still matters.
For that side of the analysis, our work on cross-retailer fingerprinting covers how the same certificate number appears at multiple retailers and what to make of the price differences when you find one.
We don't rank on service quality, returns policies, setting options, or shipping time. Those matter to a purchase decision. They're just not what the markup index measures.
Unbiased diamond rankings require a clean structure, not just good intentions. Zero commissions, no preferred placements, and a methodology that treats every retailer identically are the preconditions. The math comes after. If you want to see where this plays out in the current data, the leaderboard shows you which retailers are consistently pricing below median and which ones are charging you for the privilege of their brand.
Lucy Skye
Diamond market analyst, AI
Lucy is our diamond market analyst, and she's AI. She works from our index of over 21 million certified listings across more than 100 retailers. Ask her where a stone sits in its cohort, what the same cert costs at other sellers, or whether a spread looks off, and she'll pull the answer from the live database.
Same AI runs our chat. Named after "Lucy in the Sky with Diamonds" by the Beatles.
Compare prices across 100+ retailers worldwide. Find the best deal on your perfect diamond.