PageFox blogPublished guide
What a data enrichment API does, and what it can't
A data enrichment API fills gaps in records you already hold. It can't tell you which of those companies is ready to buy.

[ 01 / 03 ]Article
Quick answer
- A data enrichment API takes a domain, email or LinkedIn URL you already have and returns missing fields as JSON, such as job title, headcount, funding stage and hiring signals. Captain Data cites 750M+ profiles and 95%+ accuracy. Easy Enrichment charges 1¢ to 2¢ per request. DataLayer charges 1 credit per successful match and nothing for not-found results.
Editorial note
- Written by
- Drafted by the PageFox SEO agent from the sources listed below.
- Review
- Gated in code, not reviewed by a person. The draft had to pass the agent's rubric and this site's published-post checks, and it goes live on its publish date, 2026-10-05, after the pull request is merged.
- Sources
- Every figure in this article is attributed to the source it came from, with the date it was checked.
A data enrichment API only works on a key you already hold
You send one identifier and you get structured JSON back. That's the whole idea. The identifier is a domain, an email address or a LinkedIn URL, and DataLayer's reference says to provide at least one of email, linkedin_url, hashed_email, or first_name plus domain.
Here's the flow, step by step.
- Send the API a domain, email address or LinkedIn URL from your CRM, with your key in the header.
- The vendor matches it against its own data. Captain Data cites 750M+ profiles. DataLayer cites 60M companies and 300M verified contacts.
- You get JSON back. Captain Data's example returns a full name, headline, job title, location, company name and skills. DataLayer's page adds signals such as Google ad spend, hiring velocity and employee growth.
- A successful match costs 1 credit at DataLayer. A not-found result (404) is free.
According to Captain Data's own example, the shape. You pass a LinkedIn profile URL to POST /v1/people/enrich, and it returns a record with a job title and a location like Austin, Texas, US. Nothing in it tells you whether that company is shopping for a tool like yours today.
This is the first limit. If a record has no domain, no email and no profile URL, you have nothing to send, and the API can't help. Plenty of teams have the opposite problem: a long list of keys and no idea which ones matter this month.
Check your CRM first. Count the rows that carry a domain, because that number decides how much an API can do for you. If most rows are blank, fix capture before you buy anything.
Lead enrichment tools split by record type, and company data matters most
Most data enrichment tools sell more than one kind of record. The kind you pick decides what you learn. Here's how the vendors in this guide divide it.
| Type | What it returns | Use it when |
|---|---|---|
| Person | Job title, headline, skills, location and verified status for an email or LinkedIn URL | You need to qualify a contact before outreach |
| Company | Headcount, funding stage, industry and hiring signals for a domain | You need to qualify an account before outreach |
| Transaction | A merchant name and category parsed from text like AMZN MKTP US*2K4X9Y1Z0 | You categorise expense data in a fintech product |
For a B2B sales team, company enrichment does most of the work. A domain is the stable key, it's already in your CRM, and the fields answer the first question a rep asks: is this account the right size, and is it changing? DataLayer's hiring velocity and employee growth signals are the clearest example, because they say a company is in motion.
Easy Enrichment sells five record types: transactions, companies, domains, social profiles and people. Its transaction type is the odd one out for sales. Parsing a card descriptor into a merchant name is useful if you build spend tools. It does nothing for pipeline.
So when does this advice fail? If you sell to individual buyers, or your deal depends on who a specific contact is, person enrichment moves up. Check one thing before you buy, though. A company record can be right while the contact you chase is wrong. Keep the two checks separate.
The same split applies whether you work from a US sales team or an Indian one. The key is still a domain. What differs is the market you sell into, and none of the four vendor pages says where its coverage is strongest. Ask before you commit.
Data enrichment tools differ on freshness, speed and bulk
Pages that rank for this search list features. Three differences actually change what you buy.
First, freshness. Captain Data says it enriches in real time from 750M+ profiles and cites 95%+ accuracy. That's a vendor's claim, not a test, and a 95% figure still leaves a gap you'll find in real records. DataLayer leans the other way. It adds intent signals, so you learn which companies are changing, not just who works where. Choose by what you need: fresh contact fields, or early signs that an account is moving.
Second, speed and uptime. Captain Data states 99% uptime and under 500ms average response time. The enrichmentapi.io site states a 99.9% uptime SLA, 10 enrichment APIs and 40+ data fields. If enrichment runs inside a signup form, speed matters, because a slow call slows the person filling it in. If it runs overnight on a batch, you can ignore both numbers.
Third, bulk. DataLayer lists separate endpoints for bulk work: post/v1/enrich/person/bulk and post/v1/enrich/company/bulk. Use bulk to backfill an old list. Use the single call when a live action triggers the lookup.
The uncomfortable part is that none of these pages gives you a test you can check. All four are vendor pages, so treat every accuracy and uptime figure as a claim. Run a sample of your own domains through two vendors and compare the fields against what you already know is true. At the prices below, that costs cents.
One case where this doesn't matter much: if you only enrich a few hundred old records once, freshness and uptime are minor. Pick the cheapest vendor whose fields match, and move on.
Prioritize which records you enrich with a data enrichment API
An enrichment API describes a company. It returns fit fields such as headcount, funding stage and hiring velocity. It doesn't tell you which of your records deserve a lookup first, and that choice drives your bill.
Most APIs charge per successful call. Easy Enrichment charges 2¢ for a company lookup. DataLayer charges 1 credit per successful enrichment, and not-found results are free. Enriching every domain you hold spends that money on records nobody will open.
A method you can run this week:
- Pull the list of companies that visited your site in the last month, from your analytics. Read accounts, not individuals.
- Mark which companies came back more than once.
- Enrich only those companies through the API.
- Use the returned fields (headcount, funding stage, hiring velocity) to decide who a rep contacts first.
- Label each account Priority or not. Don't invent a scale you can't defend.
The order matters because the API spends credits on every record you send it. Enriching only the accounts that came back spends them where a rep will act. The saving matters less than the focus.
Now the cases where this fails. With little traffic, there's little to filter on, so you may as well enrich the whole list. Some visits also won't resolve to a company, so a gap in your list is normal. Treat the visit list as a way to cut your enrichment spend, not as a full census.
A lead enrichment API costs cents, so volume decides the model
Pricing comes in two shapes here. Per request, or credits.
Easy Enrichment charges per request. Companies and people cost 2¢. Transactions, domains and social cost 1¢. It also lists volume discounts, where you buy credits in bulk and get bonus credits. Per-request pricing suits selective, lower-volume enrichment, like the companies that came back to your site.
DataLayer uses credits. One successful enrichment is 1 credit, and a 404 not-found costs nothing. Subscription credits reset each billing cycle. Top-up credits expire 1 year from purchase. That suits a steady, predictable volume. If your volume swings from month to month, check whether unused subscription credits are worth less than paying per request. The page lists no credit price, so get the number from the vendor before you budget.
Both vendors price in USD, and the exchange rate on 1 Oct 2026 was $1 = ₹96.00 (a conversion rate, not a vendor price). A US team and an Indian team pay the same dollar rate, so the rupee cost moves with the exchange rate. None of the four sources publishes a separate India price. None of them covers privacy rules for either market, either. Take your own legal advice on consent and data use before you enrich a list at scale.
The honest trade-off: at these prices the fee is rarely your biggest cost. A wrong record that sends a rep to the wrong company costs more than the lookup did. Start with the free credits the vendors offer, test a sample, and pay only once the fields match what you know.
When PageFox is the wrong choice
PageFox is the wrong choice for a site with little traffic: it tells you which companies are already visiting, it does not bring new visitors.
What to do next
Decide whether your gap is missing fields or missing timing, because an API only fixes the first. Take the domains already in your CRM, run a sample through one vendor's free credits, and compare the result with the companies that actually read your pricing page.
See which companies are on your site
PageFox turns hidden website intent into qualified leads. PageFox identifies the company behind a visit where it can resolve one, so sales can follow up while interest is warm.
Start Free[ 02 / 03 ]FAQ
Frequently asked questions
- An API is the programmable endpoint you call from your own code or CRM workflow. A tool usually wraps the same data in a screen, so you can upload a list without writing code.
[ 03 / 03 ]Related