Lead List Quality Scorer

A lead list is only as useful as its weakest column. This free scorer grades a pasted list out of 100 for completeness and format: usable emails, names, companies, job titles, phone numbers, websites and locations, plus duplicates, placeholders and malformed values. It runs entirely in your browser, so the list is never uploaded, stored or sent anywhere.

Free tool · nothing is uploaded

Score your lead list

Paste a CSV or a plain list of leads. The scorer checks field completeness, email and phone formats, duplicates and placeholders, then ranks the rows that need fixing.

  • Completeness
  • Format checks
  • Duplicate emails
  • Row-level fixes

Your lead list

A header row is detected automatically. Comma, tab, semicolon and pipe files all work; quoted cells are supported. One record per line.

    Quality score

    Paste a lead list to see its score, field coverage and problem rows.

    0 out of 100

    —

    Enter a lead list to see your score.

    • Rows 0
    • Usable emails 0
    • Duplicates 0
    • Rows to fix 0
    Completeness0
    Format0

    Field coverage

    Share of rows with a usable value. A field with no matching column scores zero when it belongs to the active profile; fields outside the profile are marked.

    Paste a lead list to see field coverage.

      Issues found

      Paste a lead list to run the checks.

        Rows to fix

          What this lead list scorer measures

          A lead list can look clean in a spreadsheet and still be weak where it matters: an address with a typo, a row with no company, three copies of the same contact, or a website column that belongs to a different company. This tool turns those observations into two numbers and one overall score.

          Completeness asks how much of a usable outreach record is present. Format asks whether the values that are present can be used as written. The overall score blends the two, then applies a duplicate penalty through the format side and caps the result when no row has a usable email. Every input is scored against a named profile, because an email-only newsletter list and an ABM list do not need the same fields.

          How to use the scorer

          1. Paste a CSV export, a tab-separated spreadsheet selection, or a plain list with one email per line.
          2. Leave Header row on auto-detect. Override it if the first row is data or if your column names are unusual.
          3. Leave Delimiter on auto-detect unless the parse summary shows the wrong column count.
          4. Pick the Scoring profile that matches the campaign: Outreach record, Contact only, or Data hygiene.
          5. Read the overall score, then the field coverage bars. A field with no matching column scores zero and is listed under Issues.
          6. Fix the rows in the Rows to fix panel first, then re-paste. Use Copy report to hand the findings to whoever owns the list.

          How the score is calculated

          Each row receives a completeness score and a format score from 0 to 100. The completeness score is the sum of the field weights that are present and usable. The format score starts at 100 and loses points for the defects in the penalty table below. A row's own score uses the same blend as the list.

          ProfileField weights (sum 100)Blend
          Outreach recordEmail 30, name 20, company 15, job title 15, phone 8, website 7, location 560% completeness, 40% format
          Contact onlyEmail 45, name 25, company 3060% completeness, 40% format
          Data hygieneEmail 10040% completeness, 60% format

          Completeness is a weighted average across rows. A name earns full credit when a full-name column is filled, or when both first and last name columns are filled. If both first and last name columns exist and only one is filled, the name field earns half its weight. A value that is empty, a placeholder such as “N/A”, or unusable as written does not earn credit. A field with no detected column earns nothing, which is why the profile choice matters so much for a plain email list.

          Format checkPoints off the rowWhat triggers it
          Missing email40No value in the mapped email column.
          Invalid email40Bad syntax, no dot in the domain, multiple @ signs, or a reserved test domain such as example.com.
          Placeholder email40The email cell contains N/A, unknown, test or similar filler.
          Disposable domain25A known temporary-inbox provider such as mailinator.com.
          Duplicate email15The same address appears earlier in the list, compared case-insensitively.
          Placeholder value elsewhere10, once per rowA name, company, title, phone, website or location cell contains filler text.
          Invalid phone10Fewer than 7 or more than 15 digits, letters in the number, or one digit repeated for the whole number.
          Invalid or social website8The website cell is not a domain, or it is a social/profile URL.
          Domain mismatch8The email domain and the website domain disagree. Free or disposable mailboxes and social sites are skipped.
          Name formatting6 per bad name fieldA first or last name contains a number, symbol or more than four words.
          Unusable text field6 per bad fieldA company, title or location value is too long or contains no letters.

          Role-based addresses (info@, sales@, support@) and free-mail domains (Gmail, Outlook, Yahoo and similar) are reported as findings but do not remove format points. They are classifications, not errors. The same applies to a missing phone, title or location: that is a completeness gap, and only the email field charges format points when absent because a lead row without an address has no email channel.

          The overall list score is the average row completeness and the average row format blended with the profile weights, then rounded. The two component scores are shown as whole numbers, but the overall score is blended before rounding, so recomputing it from the displayed components can differ by one point. If no row has a usable email, the result cannot exceed 25 regardless of how complete the other columns are. The final number maps to the same grade bands used across the site: A = 85–100 Excellent, B = 70–84 Good, C = 55–69 Needs work, D = 40–54 Weak, F below 40 Poor.

          Completeness score vs format score

          Completeness

          Completeness is about usable coverage. A value must be present, not a placeholder, and pass its basic sanity check before it earns field weight. An email with a typo therefore loses the email share of completeness as well as format points; the two measurements answer different questions but neither pretends a broken value is complete. The field coverage panel shows the same information field by field: how many rows have a full-credit value, and how many have partial credit. Partial credit is possible only for the name field when first and last name are separate columns.

          Format

          Format measures the defects in values that exist. A missing phone number costs no format points because completeness already records the gap; an invalid one costs 10. The email field is the exception on both sides: a missing or invalid email also costs 40 format points, because a lead row without a usable address has no email channel.

          Email checks: what they prove and what they do not

          The email check validates shape: one local part, one @, a domain with at least one dot, a plausible top-level domain, no spaces, and no leading, trailing or doubled dots in the local part. It recognises a small set of reserved test domains and a finite list of disposable providers. It also separates role-based inboxes and free-mail domains into informational findings.

          A disposable address is not counted as usable even when its syntax is valid, because the inbox is designed to disappear. None of this proves an inbox exists: the tool does not connect to a mail server, does not perform SMTP verification, does not detect catch-all domains and cannot tell whether a mailbox is full, abandoned or a spam trap. A syntactically perfect address can still bounce. Treat the email score as a cleaning step, not a verification service.

          Duplicates, placeholders and column mapping

          Duplicate detection compares the trimmed address in lowercase. It does not merge Gmail dots or plus tags, and it does not perform fuzzy matching. If you need those rules, run the list through the lead list deduplicator as well. A duplicate row still contributes to the other metrics, but it loses 15 format points and appears in the row list.

          Placeholder detection covers common filler such as N/A, unknown, none, test and a single dash. Those values are treated as missing for completeness. Other-field placeholders cost 10 format points once per row; a placeholder in the email cell costs 40, because the row then has no usable address. Reserved domains such as example.org are treated as invalid emails, not placeholders, because they look like real addresses but cannot belong to a real prospect.

          Column mapping is automatic. With a header row, common names such as Email, Work Email, First Name, Company, Job Title, Mobile and Website are recognised. If no email or phone column is recognised, those two fields get one content-based fallback; other unknown columns are ignored rather than guessed. Without a header row, the tool sniffs every column by content, including full names, titles and company suffixes, so the mapping is best-guess. Add a header row when the exact mapping matters.

          Worked examples

          The three samples built into the tool produce the following results. These are outputs from the code on this page, not benchmarks from real campaigns.

          • Messy outreach CSV, 10 rows: 78 / 100, B · Good. Two invalid emails, one duplicate, one disposable domain and one missing email.
          • Plain email list, Data hygiene profile, 7 rows: 90 / 100, A · Excellent. One malformed address, one duplicate and one free-mail address; six of seven addresses are usable.
          • Clean outreach CSV, 6 rows: 99 / 100, A · Excellent. No row issues; one row has no phone number, so completeness stops just short of 100.

          The messy sample scores lower because of invalid emails, a duplicate, a disposable domain, a missing email, placeholder values and several incomplete rows. The plain email list sample loads the Data hygiene profile, so it is scored on email only and can score well despite having no names or companies. The clean sample still loses a little completeness because one row has no phone number.

          Common list problems this exposes

          • Role inboxes. A list built from info@ and sales@ addresses reaches shared inboxes, not people. It is valid data but weak for personalised outreach.
          • Free-mail domains. Consumer mailboxes are legitimate, but a B2B list with a high share of them may be a consumer list or a mixed source.
          • Placeholder values. Rows exported from a CRM often contain N/A or unknown where a field was never filled.
          • Domain mismatches. An email at one company and a website at another usually means a shifted column or a bad merge.
          • Missing titles. A list can be perfectly valid without job titles, but personalisation and segmentation suffer.
          • Invalid phone formats. Digit counts catch truncated numbers, and the letter check catches text such as “call me”.
          • Duplicates. Case differences hide repeated contacts; the tool normalises case before comparing.

          Limitations

          • The score is a heuristic opinion about data quality, not a deliverability guarantee and not a prediction of reply rates.
          • Email checks are syntactic. There is no SMTP handshake, mailbox check, catch-all detection or spam-trap lookup.
          • The email syntax check is ASCII-oriented. Internationalized domains and quoted local parts can be marked invalid even when a mail system would accept them.
          • Free-mail and disposable lists are finite. A provider that is not in the list is judged on syntax alone.
          • Column mapping is automatic. Headerless lists and unusual header names can map a field to the wrong column; check the mapping chips before trusting a score.
          • Duplicate detection is an exact case-insensitive email match. It does not merge Gmail dots or plus tags and does not use fuzzy name matching.
          • Phone validation counts digits and rejects letters. It does not confirm that a number is assigned, reachable or in the right country format.
          • Only the first 5,000 data rows and the first 600,000 characters are scored in one pass; the tool says so when it trims input.
          • The tool does not check consent, lawful basis or opt-out status. Data quality and compliance are different questions.

          Frequently asked questions

          Does the tool upload or store my lead list?

          No. It is plain HTML, CSS and JavaScript running in your browser. There is no server request, account, cookie or local storage. Your paste never leaves the page.

          What score should I aim for?

          Use the grade as a sorting tool, not an industry standard. A and B mean the list is usable after a spot check. C means specific fields or rows need work. D and F mean the list will need cleaning before it can support personalised outreach. The profile matters: a plain email list can score well under Data hygiene and poorly under Outreach record without anything being wrong with it.

          Why did my score change when I switched profiles?

          Each profile uses different field weights and a different completeness/format blend. Data hygiene scores only the email field, so names and companies cannot drag it down. Outreach record expects the full set, so missing columns cost completeness points. The score is not comparable across profiles.

          Does a valid email mean the address will deliver?

          No. Syntax checks catch malformed values, not dead mailboxes. A valid-looking address can still bounce, and a catch-all domain can accept mail for addresses that do not exist. Use a verification service when bounce rate matters.

          Can it score a headerless CSV?

          Yes, with limits. The tool sniffs columns by content for email, phone, website, job title, a full name and company suffixes. Names, companies and titles are the least reliable without a header. If the mapping chips look wrong, add a header row or set Header row to "No header row" and rely on the detected mapping.

          How many rows can it handle?

          Up to 5,000 data rows or 600,000 characters per paste. Anything beyond that is trimmed and the report says which limit was reached. Split larger lists into chunks to score every row.

          Does it remove duplicates or fix my file?

          No. It scores and reports. Use the lead list deduplicator to merge duplicate rows, the bulk domain cleaner to normalise website columns, and your CRM or spreadsheet to apply the fixes.

          Related tools

          Next step

          A clean list is the start of outbound, not the whole system. mizanursguide.com builds B2B lead generation that pairs a scored, deduplicated list with research, messaging and follow-up. See how we build lead generation systems that start from data worth contacting.