This test applies when you buy or renew a contact database for outbound or ABM in defined segments and geographies. Treat the result as a snapshot. Part of any email list decays within a year, so run the same test again before renewal.
What Does B2B Database Coverage Mean?
B2B database coverage is the share of a defined target that a vendor can return usable records for, so it only means something once you state the denominator, such as the employer firms in your NAICS codes and states that the Census Bureau's Statistics of U.S. Businesses tables count.
A vendor's headline database size is not a coverage figure. A count of millions of contacts says nothing about how many of your accounts, or the people inside them, the vendor can return. Only a ratio against a target you define answers that.
Coverage also sits apart from two other measures buyers often blend into it:
- Coverage asks whether the vendor returns a record for the account or person at all.
- Accuracy asks whether the returned email, phone, title and employer are correct.
- Freshness asks how recently each record was re-checked, which decides how long accuracy holds.
A vendor can score well on one and badly on another. A database that returns a contact for most of your accounts but with stale titles has high raw coverage and low usable coverage. This playbook measures all three, then combines them into one number, verified coverage.
If you need the basics first, start with what a B2B contact database holds and where its records come from. For vendor reviews and category guides, the hub on B2B contact databases collects them in one place. The rest of this guide assumes you are close to a purchase and want a test you can repeat.
Which Coverage Denominators Should You Use?
A coverage test needs three denominators, the market universe from government business counts, your own named ICP accounts, and the buying-group roles inside each account, because a vendor can match most of your companies and still miss most of the people you sell to.
Each denominator answers a different question, so each gets its own ratio.
Three coverage denominators
| Denominator | Divides by | Where the count comes from | Question it answers |
|---|---|---|---|
| Market universe | Firms or establishments in your NAICS codes, size classes and states | Census SUSB annual tables | How much of the market exists in the database? |
| ICP account list | Your named accounts | Customers, closed-lost deals, target list | How many of your accounts does the vendor match? |
| Buying-group seats | Accounts multiplied by the roles you sell to | Your role map | How many of the people you need are reachable? |
Market universe. The Census Bureau's Statistics of U.S. Businesses tables count firms, establishments, employment, payroll and receipts by state, metro area and county, by 2017 NAICS code down to six digits, and by enterprise size class up to 20,000 or more employees. Pull the count for your NAICS codes, size bands and states, then ask each vendor how many companies its database returns for the same filters. The ratio shows how much of the market the vendor holds. It does not show whether those records are correct.
ICP account list. This is the denominator that matters most for a purchase. Count the named accounts in your sample, then count how many each vendor matches. Use the same list for every vendor.
Buying-group seats. Multiply the accounts in your sample by the roles you sell to. For example, five roles across 200 accounts is 1,000 seats. A vendor that matches 180 accounts but fills 300 seats has very different coverage from one that matches 150 accounts and fills 600.
Two rules keep the ratios honest:
- Report each metric against one denominator only. Never divide matched contacts by matched accounts for one vendor and by sample accounts for another.
- Count a company match in the numerator only when the vendor returns at least one contact who fits your ICP at that account. A company record with no usable person is not coverage for outbound.
Match rates quoted without a denominator cannot be compared. Vendor and competitor pages often give a target match rate or a typical single-provider coverage range with no source and no stated base. Ignore those figures. Your own three ratios, on your own list, replace them.
How Do You Build An ICP Sample Test?
An ICP sample test sends every vendor the same frozen list of your own accounts and contacts, split into customers, closed-lost deals, target accounts and a known-good control group, so match and accuracy rates compare like with like instead of each vendor's best segment.
Build the sample yourself. A vendor-built sample tends to show the segment the vendor covers best, which is not the segment that carries your pipeline.
- Pull current customers, closed-lost opportunities and high-value target accounts from your CRM
- Stratify the list by the segments that matter, such as size band, region and industry
- Add a control group of contacts whose email, phone and title you already know are correct
- Give every row a stable row ID that never changes, for merging results later
- Fill the input columns every vendor can match on, listed below
- Read each trial's credit rules, then size the sample to fit them
- Freeze the file and send the identical version to every vendor
The input columns decide whether a vendor can match a row at all. Each vendor documents its own keys, so include all of the following and let each vendor use what it needs:
- First name and last name
- Company website or domain
- Company name
- Person LinkedIn URL, where you hold it
- Email address, where you hold it
- Row ID and segment label, kept for your own scoring
UpLead needs first name, last name and company URL at minimum. Apollo accepts name plus company URL or name, a LinkedIn URL, or an email. Cognism matches well on first name, last name, company and email. A file with all of these columns works for every vendor without edits.
How big should the sample be? Large enough to compare segments with each other, and small enough that you can check the matched records by hand afterwards. The trial's credits set the ceiling. Apollo consumes credits once a run finishes, UpLead deducts per row and refunds unmatched rows, and Cognism charges matched contacts on redeem, so the same file costs different amounts in each trial. Size the sample after reading those rules, not before.
A vendor-generated coverage report is a starting point, not the test. SalesIntel's trial, for example, offers to generate a data coverage report based on your ICP and decision-makers. Use it to see which segments the vendor expects to cover, then run your frozen file and score it yourself.
How Do You Run A Missing-Role Analysis?
A missing-role analysis counts, for every sample account, which buying-group roles the vendor returns a contact for, which shows whether a high company match rate still leaves the champion or economic buyer unreachable. Run it on the matched accounts from your ICP sample, one vendor at a time.
Start with a role map. List the roles in the buying group you sell to, each defined by title patterns and seniority:
- Economic buyer: The person who signs, such as a VP or C-level owner of the budget.
- Champion: The day-to-day sponsor, often a head of function or senior manager.
- User lead: The team lead who runs the tool or process.
- Technical evaluator: The person who checks integration, security or data fit.
- Finance or procurement: The person who approves the contract terms.
Department and seniority filters differ by vendor, and so do title labels. Map each vendor's returned titles to your roles before you count. A "Head of Revenue Operations" may be your champion in one vendor's export and filed under operations in another.
Then score each account in a grid like this one:
Missing-role template, one row per sample account and vendor
| Row ID | Economic buyer | Champion | User lead | Technical evaluator | Finance or procurement | Seats filled |
|---|---|---|---|---|---|---|
| ACC-001 | Filled | Empty | Filled | Filled | Empty | 3 of 5 |
| ACC-002 | Empty | Empty | Filled | Empty | Empty | 1 of 5 |
From the grid, report two numbers per vendor and segment:
- Seat fill rate. Filled account-role seats divided by total seats in the sample.
- Most-often-empty roles. The roles left empty across the most accounts.
The second number often decides the purchase. A vendor that matches the company but leaves your champion role empty fails for outbound to that segment, whatever its company match rate. If your sequences start with the champion, a database full of user leads does not carry your pipeline.
Keep the role map fixed across vendors. Changing the definition of a champion between tests changes the denominator, which breaks the comparison.
How Do You Set Up A B2B Contact Data Workflow For The Test?
An Airtable base with linked Accounts and Contacts tables can score a coverage test, because its CSV import extension merges each vendor's file on a shared field and rollup fields count matched contacts and filled roles per account, within a 25,000-row, 5MB limit per import.
The base needs four parts:
- Accounts table. One record per sample account, with its row ID, segment and size band.
- Contacts table. One record per sample contact, linked to its account, with the row ID as the merge field.
- Vendor fields. For each vendor, fields on the Contacts table for returned email, title, mapped role, email check result and an in-role checkbox.
- Rollups and views. Rollup fields on the Accounts table, plus one summary view per vendor and segment.
Airtable merges each vendor's export into the Contacts table through its CSV import extension, matching rows on the field you choose. Use the row ID, not the email, as the merge field. Then add rollup fields on the Accounts table that use COUNTALL with conditions, such as contacts where the UpLead in-role box is ticked, to count matched contacts and filled roles per account. Rollups need a linked record field and are not affected by view filters on the linked table, so the counts stay correct whatever view you are in.
Permissions and limits. These shape who can build the base:
- The CSV import extension is on all paid plans. Owners and Creators can create it. Editors can only change an extension that already exists.
- Creating or customising fields, rollups included, needs Owner or Creator permission.
- Each import is capped at 25,000 rows and 5MB.
- The extension cannot write to formula, rollup, count or autonumber fields.
A spreadsheet works for a small sample. Lookups across tabs handle one vendor at a time, but they get fragile once four vendors, five roles and a control group sit in one file, and a formula copied one row short can drop matches without warning. The linked-table base is slower to set up and easier to audit. For the wider choice of tools that build and join prospect lists without code, see the guide to no-code prospect list building tools.
How Do You Run A Coverage Test In A Vendor Trial?
Each vendor matches the same uploaded file on different keys and charges for it differently, so the rules for unmatched rows and credit use decide how large a sample a trial can carry before you upload anything. Read those rules first, then send the frozen file unchanged.
What changes from vendor to vendor is the match keys, how unmatched rows are charged and who on the account can run the job:
How each vendor handles a test upload
| Vendor | Match keys | Unmatched rows | Who can run it |
|---|---|---|---|
| UpLead | Name and company URL | Credits refunded | Single user below Professional |
| Cognism | Name, company, email | Matched rows charged | Standard or Pro seat |
| SalesIntel | Same core columns | Unlimited enrichment credits | Every user, own credits |
| Apollo | Name and company, LinkedIn, email | Credits used once run | Users with enrichment access |
The order below follows the same five checks for each vendor. If you are comparing just two vendors head to head, the matched trial between two vendors walks through that set-up.
UpLead
UpLead matches an enrichment file on first name, last name and company URL, deducts a credit for every processed row and refunds the rows it cannot match, so an UpLead coverage test costs only the contacts it actually returns.
Match keys: UpLead needs First Name, Last Name and Company URL columns in a UTF-8 CSV. LinkedIn URL, UpLead ID or email narrow the match, and up to three custom fields carry your row ID and segment.
How the test is charged: Credits are deducted upfront for every processed row, whether or not you download the results. Unmatched contacts are refunded after processing, and re-downloading the file is free. The support page states no refund for invalid or bounced emails. Extra credits cost $0.60 each on Essentials and $0.50 each on Plus.
Verification to check: Pick one email option, Valid Emails Only, Valid and Accept All, or All Emails, and record which. Accept-all addresses raise the match rate without raising verified coverage, so score them separately. UpLead says it verifies emails with a 95% accuracy rate, which is the vendor's own figure for you to test on the matched records.
Permissions and limits: Essentials and Plus are single-user accounts. Professional is a team account with seat management, so a multi-person test needs it or one owner running every upload.
What the trial is good for: The card below shows UpLead's current terms.
UpLead
B2B contact database with verified emails, mobile numbers and intent data for sales and marketing teams.
UpLead is a B2B contact database with verified emails and mobile numbers. For a coverage test it suits teams that want to pay only for matched rows on a small, self-run sample.
- Free plan
- No
- Free trial
- 7 days
- Public API
- Yes
- Ratings
- G2 4.7/5 (831 reviews)
Cognism
Cognism's Enhance upload matches on first name, last name, company and email and shows how many credits a list will use before you redeem it, and its results flag contacts who changed company or title.
Match keys: Cognism Enhance gives a good match rate on first name, last name, company and email. Uploads are capped at 16MB, and about 1,000 records process in a few minutes.
How the test is charged: Credits are used when you redeem the list, after a popup shows the count. Matched contacts are charged, opt-outs included, so an opted-out match costs a credit and is still unusable.
Verification to check: Cognism states it screens its phone data against Do Not Call lists worldwide, without naming countries. Ask which lists apply to your regions, then count opted-out and screened records as uncovered.
Permissions and limits: Exporting data and enriching lists by CSV upload sit in the Standard package. Pro adds on-demand verification and higher-quality mobile data. Each package includes 5 seats with a credit allocation per seat.
What the trial is good for: The results flag job and company changes and let you compare each contact with the uploaded data. Run your control group through it to see how well it spots changes in records you already know.
Cognism
B2B sales intelligence platform with contact and company data, including phone-verified mobiles, strong in European markets.
Cognism is a B2B sales intelligence platform with contact and company data, including phone-verified mobiles. Its Enhance upload doubles as a freshness check on your own CRM records.
- Public API
- Yes
- Compliance
- GDPR, ISO 27001, SOC 2
- Ratings
- G2 4.5/5 (1,372 reviews)
SalesIntel
SalesIntel's trial includes a coverage report built from your ICP and decision-makers, and contacts its Research on Demand team finds afterwards belong in a separate column, because they were not in the database when you tested it.
Match keys: Send SalesIntel the same core columns as every other vendor. Keeping the input identical is what makes its results comparable, whatever the platform can match on.
How the test is charged: SalesIntel lists one offering with unlimited export and enrichment credits per user per month, so the test is not credit-bound. Research on Demand adds 10 credits per user per month to request data that is missing, inaccurate or unavailable in the platform.
Verification to check: SalesIntel says its researchers verify data by calling direct dials and that it re-verifies data every 90 days. Both are vendor statements to test on your matched records, as is its 95% accuracy figure.
Permissions and limits: Credits are per user, so each tester works from their own allowance. Count Research on Demand results apart from database matches, because they are researched on request.
What the trial is good for: The trial offers a data coverage report based on your ICP and decision-makers. Compare it with your own score on the frozen file.
SalesIntel
B2B contact data and pipeline generation platform with human-verified data for sales, marketing and RevOps teams.
SalesIntel is a B2B contact data platform with human-verified data for sales, marketing and RevOps teams. Its trial suits buyers who want a vendor coverage report to check against their own.
- Public API
- Yes
- Ratings
- G2 4.3/5 (540 reviews)
Apollo
Apollo's CSV enrichment accepts up to 100,000 rows matched on name and company, LinkedIn URL or email, and it consumes credits as soon as a run finishes, so trim the file to the sample before uploading.
Match keys: Apollo matches contacts on first name, last name and company URL, first name, last name and company name, a person LinkedIn URL, or an email. Accounts match on website, company LinkedIn URL, company name or domain. Files are .csv, up to 50MB and 100,000 rows.
How the test is charged: Credits are consumed once enrichment runs, and deleting the results does not restore them. Email and mobile data draw on separate balances, and exporting or pushing records out of Apollo also costs credits. Credits are pooled across the team, granted each billing cycle and do not roll over.
Verification to check: Run Apollo's emails through the same independent verifier as every other vendor, and score mobiles only if your account has Direct Dials access, since mobile enrichment needs it.
Permissions and limits: A user without enrichment access must ask an Apollo admin, and with multi-source enrichment on, admin approval may be needed before a run. Seeing team-wide credit usage needs the credit-usage permission. Other users see only their own.
What the trial is good for: The card below shows Apollo's current terms.
Apollo
AI sales platform combining a B2B contact and company database with outreach and engagement tools for sales teams.
Apollo is a sales platform that combines a B2B contact and company database with outreach tools. For a coverage test it suits teams that can control credit use through admin approval.
- Free plan
- Yes
- Compliance
- ISO 27001, SOC 2
- Ratings
- G2 4.7/5 (9,843 reviews)
How Do You Check Accuracy Of Matched B2B Contact Data?
Verified coverage divides the records that pass your own checks by the same denominator as raw coverage, and it decays quickly, since ZeroBounce's 2026 decay report found at least 23% of an email list goes bad within a year. That decay is why the accuracy check has to happen close to the purchase and again before renewal.
23%
The average minimum share of an email list that decays within one year, from addresses ZeroBounce's list-cleaning software processed from January to December 2025.
2025 · 11 billion+ email addresses · Source
ZeroBounce is an email-verification company, so the figure reflects its own processing data rather than any contact-database vendor's. Use it to set re-test timing, not as a benchmark for a vendor.
Check matched records in this order:
- Score the control group first. You already know its truth, so it shows each vendor's error rate before you touch the wider sample.
- Verify every matched email with one independent verifier. Use the same tool for every vendor and record each result as valid, catch-all or invalid. A catch-all domain accepts mail for any address, so its emails count as unverified.
- Check a random set of titles and employers. Compare them with the company's own site and the person's public profile. Count a record as accurate only when both the title and the employer match.
- Dial a small random set of phone numbers. Score direct dial and mobile numbers as reached, wrong person or dead, and keep mobiles apart from office lines.
Then compute verified coverage for each vendor and segment:
- Verified coverage = records that pass every check divided by the same denominator used for raw coverage.
Vendor accuracy figures do not replace this number. UpLead says it verifies emails with 95% accuracy and SalesIntel quotes its own 95% figure. Both are the vendors' claims about their whole databases. Your verified rate, on your own sample and your own segments, is the figure that predicts what your team will reach.
What Match Rate Is Good Enough To Buy?
No single match rate is good enough for every team, so set a threshold for each revenue-weighted segment before the trial and compare vendors on cost per verified in-role contact, which puts credit-based and unlimited plans on the same footing.
Set the thresholds before any results come back. A bar set after seeing the numbers tends to move toward the vendor you already prefer.
Decision rules for the purchase:
- Weight segments by the revenue they carry. A gap in a segment that brings in little pipeline matters less than the same gap in your core segment.
- Require each metric to clear its own bar in the segments that carry pipeline. Account match, seat fill and verified coverage are separate tests, and passing one does not cover another.
- Compare vendors on cost per verified in-role contact. Divide the credits or contract cost the test used by the number of verified in-role contacts it produced.
- When no single vendor clears the bar, test whether a second source fills the empty roles before buying more seats from the first.
Cost per verified in-role contact works across pricing models. On UpLead, extra credits cost $0.60 each on Essentials and $0.50 on Plus, but unmatched rows are refunded, so the real cost rises with every invalid email you receive. On Apollo, credits are pooled per billing cycle with no rollover, so unused credits raise the cost. On Cognism, one credit reveals one contact, opt-outs included. On SalesIntel, unlimited enrichment credits per user mean the cost is the contract divided by verified contacts.
Scoring sheet, one per vendor
| Metric | Denominator | Threshold | Pass rule |
|---|---|---|---|
| Account match | Sample ICP accounts | Set per segment before the trial | Clears the bar in core segments |
| Seat fill | Account-role seats | Set per segment before the trial | Champion and economic buyer filled |
| Verified coverage | Same as raw coverage | Set per segment before the trial | Clears the bar after all checks |
| Cost per verified in-role contact | Verified in-role contacts | Your target cost | Lowest among vendors that pass |
Once a vendor passes, the decision moves to fit, contract terms and workflow. To shortlist on those, compare B2B contact databases on refresh cycles, credit costs and compliance duties.
Which Compliance Checks Belong In A B2B Data Evaluation?
Compliance changes what counts as covered, because a record you cannot lawfully contact is not usable, and California requires registered data brokers to process DROP deletion requests at least once every 45 days from August 1, 2026. Check how each vendor handles consent, screening and deletions before you score a single record.
Ask each vendor four questions during the trial:
- How do you source and refresh records, and how often?
- Do you notify the people in your database and give them a way to opt out?
- Do you screen phone numbers against do-not-call lists, and which countries do those lists cover?
- How do deletion requests reach records a customer has already exported?
Cognism states that it notifies the people in its database with an opt-out option and cross-references its phone data against Do Not Call lists worldwide. Ask any vendor making that claim which lists apply to your target regions.
The DROP question matters for any vendor registered as a California data broker. If deletions reach the vendor's database every 45 days but never reach your CRM, your exported records drift out of compliance after purchase. Ask how and when those deletions flow to you.
In scoring, count opted-out contacts the vendor returns as unusable. Cognism charges for matched opt-outs, so they show up in its results and in its credit count. Leave them out of every coverage numerator.
Which Mistakes Skew A Coverage Test?
Most coverage tests go wrong before any data comes back, when the vendor picks the sample, vendors get different input columns, or a case-sensitive import silently fails to merge results. Each of these makes one vendor look better or worse than its data is.
- Letting the vendor pick the sample. A vendor sample shows its strongest segment. Use your frozen ICP file.
- Mixing denominators. Dividing by matched accounts for one vendor and sample accounts for another changes the result. Keep one denominator per metric.
- Counting catch-all emails as verified. They raise the match rate, not verified coverage.
- Giving vendors different input columns. A vendor that gets LinkedIn URLs and another that does not are not on the same test.
- Uploading before reading credit rules. Apollo credits are gone once a run finishes, UpLead deducts upfront, and Cognism charges matched opt-outs.
- Counting Research on Demand results as database coverage. SalesIntel researches those contacts on request, so they belong in a separate column.
- Ignoring import errors. Airtable's merge is case-sensitive, keeps duplicates inside the CSV and imports invalid select values as blank, so matches can drop with no error.
FAQ
How many records should a B2B data sample include?
Enough rows in each segment to compare segments with each other, and few enough that you can check the matched records by hand. The trial's credits set the upper limit, so read each vendor's credit rules first. Apollo, for example, accepts up to 100,000 rows, but consumes credits once a run finishes.
Can I test coverage without paying for credits?
Usually not entirely, since most trials spend credits on matched records. UpLead refunds unmatched rows and Cognism shows the credit count before you redeem a list. SalesIntel's trial also offers a coverage report based on your ICP and decision-makers, which costs no credits to read but is not your own test.
How often should I re-test database coverage?
Re-test before every renewal, and whenever your ICP or target regions change. Email data decays quickly, and ZeroBounce's 2026 report puts the average loss at no less than 23% of a list within one year. A coverage score from last year's trial says little about the records you would buy now.
Should I trust a vendor's own coverage report?
Use it as a starting point, not as the result. A vendor report shows the segments the vendor expects to cover, built by the vendor. Run your own frozen ICP file through the same trial, score it against your denominators and compare the two. Where they disagree, your own score decides the purchase.
Can I use a spreadsheet instead of Airtable for the test?
Yes, for a small sample and one or two vendors. A spreadsheet gets fragile once several vendor files, roles and a control group share one sheet. Airtable's linked tables and rollups keep the counts per account, but its CSV merge is case-sensitive and skips duplicates, so clean files first either way.
Sources
Sources



