Find the wrong company matches in your CRM, MDM or supplier master.
Upload a company CSV. Find duplicate records, inspect the evidence behind each decision, and keep the unresolved rows for your team. We write nothing to your systems.
300 credits. No card. Verify your email, then run the sample or upload your CSV.
Free compares records in your workspace. Paid plans add registry checks.
Explore a result before you sign up.
Five fictional records. Two outcomes to inspect. No account needed here.
Two Acme rows. One local identity.
Sample Acme Limited + Sample Acme LtdDuplicate records share one local profile
Both supplied the same registration number and issuing jurisdiction.
SAMPLE-ACME-001 · GB
The Willow pair stays separate.
Sample Willow Trading + Sample Willow TradePossible duplicate. Separate local profiles.
Neither supplied a registration number. No identity match was established at the Free matching depth limit.
A registration number and issuing jurisdiction would help settle them.
Inspect the receipt and all five inputs
Acme decision: match. Identity rule: Same supplied registration number and issuing jurisdiction.
- sample-001: Sample Acme Limited · SAMPLE-ACME-001 · jurisdiction GB · country GB.
- sample-002: Sample Acme Ltd · SAMPLE-ACME-001 · jurisdiction GB · country GB.
- sample-003: Sample Beacon Inc · SAMPLE-BEACON-003 · jurisdiction US-DE · country US. New unverified local profile.
- sample-004: Sample Willow Trading · country GB · no registration number or issuing jurisdiction supplied. New unverified local profile; possible duplicate of sample-005.
- sample-005: Sample Willow Trade · country GB · no registration number or issuing jurisdiction supplied. New unverified local profile; possible duplicate of sample-004.
Willow comparison: possible duplicate, kept separate at the Free matching depth limit. No identity match was established.
Recorded from a completed Free workspace run on 13 October 2026. Five records, five credits. Supplied records and local comparison evidence only; no registry calls or external identity verification.
300 credits. No card. Verify your email, then run the sample or your own CSV.
Start with the records you manage.
You pay per decision. Rows we cannot decide cost nothing.
Each plan sets your allowance of credits. What one decision costs is set out under the plans, and three of the five cases cost nothing.
A deep check is a row that goes on to a model or a live registry lookup, whether or not it ends in a decision. Free includes none; every paid plan has the deep-attempt allowance shown above.
What one decision costs
- 1
- A decision reached by the deterministic or probabilistic stage. CPU only, no egress.
- 5
- A decision that needed LLM adjudication or agentic research.
- 0
- An abstention, at any stage, including the ones that spent the most getting there.
- 0
- A byte-identical replay. Per tenant, per exact content, and with no expiry.
- 0
- An input that normalised to no identifying signal. There was nothing to answer.
Create your workspace on Free with no card. Paid subscriptions start in workspace Billing through Stripe Checkout, with VAT added where applicable. Usage is tracked without automatic usage or overage charges. Plans, allowances and the licence terms →
What buyers ask first
What is Entity Bind?
Entity Bind is an AI-native entity resolution API and MCP server for company identity. One record in, one resolved company record out — with citations, a calibrated confidence score, a receipt for every decision, and an honest abstention instead of a guess when the evidence will not carry a match. It runs beside the systems you already have rather than replacing one: your CRM, supplier master, master data platform or licensed data feed proposes a company match, and Entity Bind accepts it, withholds it or contradicts it independently, with a citation you can open. Scope is company and organisation identity only. It is built in London, and it is early-stage and priced as one — the resolution method and its measurements are published in full, and the global data breadth is not yet at incumbent scale.
How accurate is it? Is it 99%?
On the continuous-integration gold set, 357/357 automated merges were clean, with 63.10% of pairs decided automatically; the rest abstain. We quote the cautious end of that result, the 95% Wilson lower bound: 98.94%, which sits below 99% and is 24 clean labelled merges short of proving a 0.99 bound. The point estimate of precision is 1.0000. End-to-end resolution on that fixture is 70.78% (499/705). A "99% entity resolution" figure quoted without the evidence shortfall, the automation rate and the resolution-level number beside it overstates this system, whoever is quoting it.
We already have an MDM platform. Where does this fit?
Beside it, as the layer that decides and evidences rather than the one that stores. A master data platform is very good at governance workflow, stewardship, hierarchy management and pushing a golden record to the systems that consume it, and none of that is on offer here. What it usually does not have is an independent admission policy: the matching rules are yours, tuned by your stewards, and there is nothing outside the platform to contradict them with a citation. Entity Bind is that outside opinion, with a receipt per decision and a floor it will not cross, feeding the stewardship queue rather than replacing it. If your stewards are drowning, the abstentions are the work list.
How much does a 100,000-row file cost?
It depends on the columns rather than the row count, and you can work it out yourself. A row decided by identifier rules or probabilistic scoring is 1 credit; a row that needed adjudication or research is 5; an abstention, a byte-identical replay and a row that normalised to no identifying signal are all 0. So 100,000 rows all carrying company numbers is 100,000 credits, and the same file where every row went deep is 500,000. At the Scale rate of $0.032 a credit, the cheapest paid rate we publish, that is roughly $3,196 and $15,980. That is more credits than any priced plan includes and there is no overage rate, so a file this size is a Scale conversation, quoted against your volume. Before any quote, we run a free preview over your file. It makes no model or registry calls, tiers your rows and reports composition, never a predicted resolution rate. Then we talk it through. Start free, then choose a paid plan in Billing.
Will you write to our CRM?
No, and there is no writeback connector to switch on later either — automatic CRM or ERP writeback is explicitly not on the roadmap. What comes back is a set of files keyed on your own record ids, so the join happens on your side, under your change control. That is a commercial position as much as a technical one: the moment a supplier writes to your master, an argument about a bad merge becomes an argument about whose fault it is, and the receipt stops being the point. We propose actions and you apply them, or you do not. A report is never the system of record.
How do we start?
Create your Free workspace online, verify your email and upload your own company CSV. Free includes 300 credits and shallow matching with no card; create your own API keys for REST and MCP, and choose a paid monthly subscription in Billing when you need greater depth or capacity. For an assisted Merge Safety Sprint, contact us with the file you are defending: a CRM export, a supplier master, a customer-success list or a post-merger overlap, with your own source ids preserved and, if you have them, the entity id, match and confidence your incumbent proposed. A person reads that request, and a short conversation scopes the optional assisted Sprint. What comes back is which of your rows are the same company, which of your existing matches we would not have made, and which we could not decide — where a further field would settle an unresolved row, it names that field. We write nothing into your systems, and you do not replace your current vendor to run it. The accuracy method is published in full at /accuracy.
Start with the messiest file you have.
Create your Free workspace, verify your email and upload a company CSV. Review the matches and download the results with a receipt for every decision. We write nothing to your CRM, ERP, MDM or warehouse.
300 credits. No card.
For a guided review of your file, explore the Merge Safety Sprint →
Check the evidence behind the decisions.
Explore the method here, or go straight to accuracy, coverage or trust and security.
How we handle uncertain matches
When the evidence is thin, you get a shortlist and the column that settles it
A match score leaves the cut-off to you, and with it every wrong merge that scored above it. When the evidence will not carry a match, we hand the row back instead.
Two customers become one account and a renewal is quoted at the wrong discount. Two suppliers become one vendor and a payment leaves for the wrong bank details. The record that caused it looked exactly like the nine hundred that were right — it carried a score of 0.83, and the threshold was 0.80.
A row we hand back costs zero credits, even one we researched all the way to the live registers. You pay for the decisions we make, and nothing for the rows we return to your team.
- 1APEX ROOFING LIMITED0.8123
- 2APEX ROOFING (MIDLANDS) LTD0.7994
Which website belongs to the company you mean?
It lands in your review queue as one item your team can work.
See the API response
{
"decision": "unresolved",
"candidates": [
{ "legal_name": "APEX ROOFING LIMITED", "probability": 0.8123 },
{ "legal_name": "APEX ROOFING (MIDLANDS) LTD", "probability": 0.7994 }
],
"clarification": {
"attribute": "domain",
"question": "Which website belongs to the company you mean?"
},
"review_id": "rev_4e8b0d17c9a24f35b1e6072a8c9d3f10",
"usage": { "credits_charged": 0 }
}
The shortlist is ranked, the clarification names the one attribute that would settle it, and review_id opens a queue item your team can work.
We only accept a match at 0.90 confidence or above. A match that scores lower is never returned: the row comes back as a ranked shortlist, like the one above, instead.
It is an acceptance contract, not calibration evidence: it says what we refuse to return, not how often an accepted match is right. Read it with the coverage it costs.
The assisted audit pack and company check
Three files answer the question. Nine more show the working.
Send us a file. We tell you which of your rows are the same company, which of your existing matches are wrong, and what we could not decide — and we write nothing to your systems.
Rows we matched to a company already on record, each at 0.90 confidence or above, and the pack checks every one against that minimum again.
Merges our checks reached and then refused, each naming the column of yours that disagreed, in your own field names.
Left for your team. Where one of your own columns would settle a row, it names the cheapest one.
The other nine show the working, down to a manifest whose totals have to add up or the run ships nothing at all. All twelve files, and what each one holds
See the twelve filenames
- — accepted_matches.csv
- — new_entities.csv
- — unresolved.csv
- — golden_records.csv
- — withheld_matches.csv
- — do_not_merge.csv
- — reversal_map.csv
- — decision_receipts.ndjson
- — ATTRIBUTION.txt
- — report.html
- — manifest.json
- — manifest.sha256
Request a company check.
A name, and whatever context you have — a town, a website, a company number, or the messy string it arrived as. A person runs it and emails you the matched company record with its source cited for each field, or, if we cannot tell, the one column that would have settled it.
The matching steps, REST API and MCP server
Each row stops at the cheapest check that can decide it
A matching company number or LEI settles a row on the spot. Rows that need more are scored next, and only the ones still undecided go on to a model or a live registry lookup. A row with nothing to match on stops before any of it, and a row nothing can settle comes back to your team.
See the seven steps, drawn
All seven steps in full, and what a receipt lets you reopen →
Your engineers can call it from a nightly job or an AI agent
For the engineers on your team: your systems call the REST API, from a nightly job or a batch run, and AI agents call the MCP server and get the same answers, including the rows we cannot decide and the column that would settle them. One key, one workspace and one price cover both, so a decision costs the same whichever way it was asked for.
The REST API →The MCP server →
What each one charges for
Four billable endpoints, everything else free
Resolve, match, batch and crosswalk are metered. Reads, receipts, the review queue, exports, erasure and usage are not. Every response carries the usage block, so you can check what you were charged on the call itself.
Eleven tools, two of them billable, your existing key
An agent calls the same pipeline and gets the same answers — including unresolved itself, with the column that would settle it — a value a model can branch on. The other nine tools, the receipt read and the review queue among them, are free and unmetered.
Sources, coverage and product fit
Runs beside your MDM platform or data provider
Keep the system you already run and put us alongside it. We check its matches independently and tell you which ones we would not have made.
If a licensed data provider or an MDM platform is already in your stack, we run beside it — testing the matches it proposes, repairing the wrong ones, and contradicting them with a citation.
A third of French companies share their exact name — 1,003 live companies sit on one name. A French file needs a town or postcode column, and with one it measured 2,998 of 3,000 on the postcode tier.
Teams with a company master they have to defend — an MDM or stewardship queue, a CRM after a migration or a merger, a supplier file before a payment run, or counterparty onboarding that has to survive an audit.
Buying breadth as the product: we hold a fraction of the records the large data providers hold, and are not building a global company graph. Entity Bind resolves companies and organisations only. It does not resolve people, vessels, bank-account ownership, sanctions exposure, emissions or geolocation, and its results may not be used for eligibility decisions about individuals, including employment, credit and tenancy.
More worked examples and matching outputs
Upload a company CSV in your workspace. We match what the evidence supports to a registered company and cite the source, flag the merges we would block, and hand the rest back, most with the column that would settle it. We write nothing to your systems.
- crm-export.csv uploaded · 8 rows, keyed on your crm_id
- names cleaned up: legal forms removed, company numbers standardised
- candidates shortlisted by the rarest words in each name
- 3 rows are one company they share a company number, so no model was needed
- 3 rows are two companies their scores cleared our minimum
- 1 row we could not decide just a name, 5 possible companies · its website would settle it
- 1 row had nothing to match on no company record created, not charged
2 sets of duplicates. 2 rows we would not call.
All eight rows come back in the run's CSV and JSON downloads under your own crm_id, each with a receipt showing how it was decided. in full →
via a CSV upload in your Entity Bind workspace
- check the match your platform proposed for record P-4471
- your platform matched this pair at 0.94
- we check it against the register, not against your rules
- the company number differs from the one on the matched record
- not the same company a company number that disagrees settles it, no further checks
Your platform said 0.94. We say no.
A company number that disagrees decides it, and you can check that number on the register. A pair check stores nothing; send the record on its own when you want a receipt. in full →
via POST /v1/match
- 4 supplier records sent, keyed on your supplier ids
- rows 1 and 3 are one company the registration number decides one, website and name the other
- row 2 is the same company the register lists its trading name as a former name
- row 4 not merged its website and phone both disagree with the other rows
- row 4 is kept apart, for your team to decide
Blocked, and we name what disagreed.
Two weaker signals that both disagree outweigh a matching name. Row four comes back as a payment-details conflict for your controls team to decide, with the evidence. in full →
via POST /v1/batch
- the agent looks up the supplier by name and country
- it holds a payment tool and a spending limit
- we cannot decide yet: more input needed 2 companies have almost the same name
- digging deeper would give the same answer, so it asks for the company number
- it tries again with the company number
- matched on the company number 1 credit
- it reads the receipt and the evidence behind it · free
Told we could not decide, the agent asked for the company number and tried again.
The first answer cost nothing, the lookup that followed cost one credit, and the agent read the receipt before it paid. in full →
via MCP · resolve_company, then get_decision
Self-service. Create your workspace online and verify your email to start matching company records. Free starts with 300 credits and no card. Paid monthly plans are available in workspace Billing; VAT is added where applicable. Usage is tracked without automatic overage charges. Trust and security
Guides and reference
The full method, one click from here
Every page here is public and ungated.
The seven steps, and what a receipt reopens
The accuracy methodEvery figure, what it was measured on, and its limits
The audit packTwelve files, and the limits of the reversal map
The guide libraryFrom first principles to running the audit yourself
API and MCP reference, for your engineersEndpoints, payloads, tools and the error model
Book a discovery call
// book a discovery call
Talk through your company-record challenges.
A 30-minute discovery call to discuss the company matches in your CRM, supplier master or MDM workflow.
No time that suits? Email hello@entitybind.com. Calendar not loading? Open it on cal.com.