Methodology
How we collect data, how match scores are calculated, and why paid placement cannot move them. Published in full because a comparison site asking for your trust owes you the arithmetic.
Where the data comes from
Every numeric value on this site carries a source URL and the date we read it. There are four kinds:
- Provider site — read from the provider's own published pricing or documentation page.
- Regulator — read from a regulatory register. Licence data is only ever this.
- Provider claimed — supplied by someone who has verified control of the listing.
- Press — reported by a named publication, used sparingly and never for fees.
A value with no source is not published. The page shows “Not published” instead. This is enforced in code at the point data is read from the database, not in the templates, so a new page inherits the rule automatically. We would rather show a gap than a guess.
How fees are normalised
Most directories store a fee as a string — “1.4% + 25c”, “Interchange++”, “Contact for pricing”. Strings cannot be sorted, compared or modelled. We store the percentage as an integer number of basis points and the fixed component as integer minor units, alongside the original string. There is no floating-point arithmetic anywhere in the money path.
Interchange++ pricing is a markup over interchange, not an all-in rate. Where we model it, we add an assumed 0.25% interchange and 0.10% scheme fees and flag that we have done so. That assumption is visible on every estimate that uses it.
The match score
100 points across six components:
| Component | Max | How it is earned |
|---|---|---|
| Coverage | 25 | Proportion of your selling countries covered. An explicit country listing counts in full, global coverage at 0.75, a region-only match at 0.6. |
| Payment methods | 25 | 20 points for the methods you marked required, 5 for nice-to-haves. If you require none, the weight moves to coverage. |
| Industry | 20 | Explicit acceptance in the provider's own criteria scores 20; listed for the industry scores 17; category implies it scores 14; silence scores 8. Explicit exclusion disqualifies. |
| Cost | 15 | Estimated effective rate scored against the spread of the other qualifying providers in your run — not a fixed threshold. No published rate scores a neutral 6. |
| Capabilities | 10 | Proportion of your required features supported. |
| Integration | 5 | Channel supported (2), SDK for your stack (2), instant sandbox (1). |
Hard filters
Five conditions disqualify outright. A disqualified provider is never silently dropped — it appears in a collapsed list with the specific reason:
- Your country of incorporation is on the provider's exclude list.
- Your industry is explicitly declined.
- Your volume is below their published onboarding floor.
- Your chargeback rate exceeds their published ceiling.
- They require processing history you do not have.
Modifiers
- +3 the listing is claimed and maintained by the provider.
- −5 our data is more than 180 days old.
- −8 no licence found in your country, where the industry or the provider's own criteria make one necessary.
- +2 the provider accepts introductions through us — and we disclose this on every affected result, because it is the one modifier with a commercial dimension.
What money does not buy
rel="sponsored" on the link. We assert this with an automated test that scores the
same provider twice — once marked as featured, once not — and fails the build if the two results
differ in any respect.
We do earn commission on some outbound links. That commission does not change a score, a position, or the price you are quoted. If it ever did, the independence would be the only thing we had actually sold.
Reproducibility
Every match run stores the engine version that produced it. When we change the weights, old shared results keep their original scores and are labelled as historical rather than silently recalculated. The version history lives in the repository.
Getting it wrong
We will have figures that are out of date or simply wrong. Every provider page has a report link that needs no account, and every correction is recorded in the change ledger with its date and source. If you work at a provider, claim your listing and fix it directly.