ScoringATS

Anatomy of a Merit Score

Exactly how our fully deterministic, 9-axis Merit Score is calculated — the real weights, what each axis measures, what counts as a good score, and what the number deliberately can't see.

MeritSlate Team8 min read

Most resume scoring tools are black boxes. You upload a file, a number appears, and you're left guessing whether 68 is good, what would move it, or why the same resume scored 81 somewhere else. Ours isn't a black box. Here's the full recipe — the real weights straight from the engine, not a marketing approximation.

The number is computed, not guessed

The Merit Score is fully deterministic. Every point comes from evidence the engine can show you — keyword matches, parsed dates, bullet statistics, vendor parse simulations. A language model writes the explanation (strengths, gaps, next steps), but it never sets the number. Re-score the same resume against the same job description and you get the exact same score, every time.

That property matters more than it sounds. A score produced by asking a language model "rate this resume out of 100" will drift between runs, reward confident writing over evidence, and quietly invent justifications for whatever number it happened to emit. If you can't reproduce a score, you can't tell whether your edit helped or the dice simply landed differently.

The nine axes

The overall score is a weighted blend of nine evidence-anchored axes (weights sum to 100%):

Skills & keywords

25%

Experience fit

18%

Quantified metrics

13%

Action verbs

11%

Semantic coverage

10%

Seniority

7%

ATS format

6%

Domain / industry

5%

Title fit

5%

AxisEvidence source
Skills & keywordsJD-weighted taxonomy match + synonym / implication expansion
Experience fitPer-stack years-of-experience diff + title & seniority trajectory
Quantified metrics% of bullets with numbers / % / $ (deterministic bullet analysis)
Action verbsStrong-verb starts, passive-voice & weak-phrase flags
Semantic coverageJD-requirement vs resume TF-cosine, section-weighted
SeniorityTitle / level match vs JD seniority expectation
ATS formatNine-vendor parser simulation + file inspector signals
Domain / industryDomain background vs JD context (with anti-contamination gates)
Title fitMost-recent title vs the target role title

The two highlighted axes — keywords at 25% and experience fit at 18% — decide almost half the score between them. The two writing axes, metrics and verbs, add another 24%.

What each axis is actually measuring

Weights only tell you how much an axis is worth. What you need in order to fix one is what it's looking at.

The match axes: skills, semantic coverage, domain, title

These four decide whether you're a plausible candidate at all. Skills & keywords ranks the job description's terms by where they appear — a requirement outweighs a nice-to-have, a tool named four times outweighs one named once — and then checks your resume for each, expanding through a skills taxonomy so K8s satisfies Kubernetes and Postgres satisfies a generic SQL ask.

Semantic coverage is the safety net underneath exact matching: a TF-cosine comparison between the job description's requirements and your resume text, weighted by section, so the same sentence counts for more inside an experience bullet than in a skills list. It catches relevant experience described in different words. Domain and title fit ask the blunt questions — do you come from this industry, and does your most recent title resemble the target?

The evidence axes: experience fit and seniority

Experience fit doesn't just count total years. It diffs years per stack against what the posting asks for, then reads your title trajectory. Five years of Python across three roles reads differently from five years where Python appears once, in your oldest job.

Seniority compares your level against the posting's expectation in both directions. Applying two levels up gets scored honestly; so does applying well below your level, which is a real and frequently ignored reason applications go nowhere.

The writing axes: metrics, verbs, ATS format

Quantified metrics measures the share of your bullets carrying a number, a percentage or a currency figure. Action verbs checks how many bullets open with a strong verb, and flags passive constructions and weak filler openers ("responsible for", "helped with"). ATS format is the only axis that ignores the job description entirely: it runs your actual file through a nine-vendor parse simulation and reports what survived.

Relevance gating: fit, not polish

A beautifully formatted resume for the wrong job should not score well — that's the design goal behind the gating, and it's also why diagnosing a silent job search starts with targeting, not polish. Without gating, every scorer degenerates into the same useless advice: add bullet points, use strong verbs, keep it to one page. Those things matter only after you're a plausible candidate.

Smooth ceilings, no round-number clustering

Evidence-derived hard ceilings cap the score when something fundamental is missing — a must-have skill, or a years-of-experience gap. Those ceilings are interpolated along smooth curves rather than snapping to a handful of discrete values, so two different resumes don't collapse onto the same round number.

This is why you'll sometimes fix three small things and watch the score move by a single point: a ceiling is holding it down, and the ceiling has one cause. The axis breakdown names that cause instead of leaving you to guess.

What counts as a good score

The most common question we get, and the honest answer is that the number is relative to one job description, not a grade on your resume.

  1. 1

    Read the gap list before the number

    The score summarizes what the gap list says in detail. The list is the actionable half.

  2. 2

    Compare against yourself, not a benchmark

    Score the same resume against three real postings. The spread tells you whether the problem is your resume or your targeting.

  3. 3

    Chase the lowest weighted axis, not the lowest axis

    A 20 on skills & keywords costs far more than a 20 on title fit. Fix in weight order.

A resume that scores well against the posting you're applying to today is doing its job. A resume that scores well against every posting you try is usually too generic to score excellently against any of them — which is the real argument for tailoring, and the reason a single "resume score" with no job description attached can't mean very much.

Why two tools give you two different numbers

Because they're measuring different things and weighting them differently. A tool that is 80% keyword overlap will reward a resume that lists every term in the posting, including ones you can't defend. A tool that leans on formatting checks will reward a plain document that has nothing to do with the role. Neither is lying; they're answering different questions.

The useful question to ask about any resume score is: what evidence produced this number, and can I see it? If the tool can't show you the matched terms, the parsed dates, and the specific requirements you missed, the number is decoration.

What the score deliberately can't see

Being explicit about the limits is part of being honest about the number.

What the score measures well

  • Requirement coverage against a specific posting, with the matched terms shown
  • Whether your file survives nine different ATS parsers intact
  • Years of experience per technology, read from real parsed date ranges
  • Whether your bullets carry verifiable outcomes or just responsibilities

What it can't measure

  • Whether a hiring manager will personally like your background
  • Referrals, reputation, and the internal candidate you'll never hear about
  • How well you interview once the resume has done its job
  • Salary band fit, visa constraints, and other filters applied outside the resume

A resume score is a measurement of one step in a hiring process that has many. It tells you whether you're losing at the stage where the loss is silent and fixable — which happens to be the stage where most applications actually die.

How to use the score to actually fix a resume

The workflow that works is boring and repeatable:

  1. Score against one real posting you want, not a generic template.
  2. Open the lowest axis by weight contribution, not the lowest raw number.
  3. Fix only what the evidence drawer names — the missing must-have skill, the three bullets with no outcome, the header the parser dropped.
  4. Re-score. Because the engine is deterministic, any movement is your edit.
  5. Stop when the remaining gaps are things you'd have to lie about.

That last step is the important one. The gap list will eventually ask for experience you don't have, and the correct response is to leave it unclaimed and apply anyway — not to manufacture it.

The free tool breaks the score down axis by axis — with an evidence drawer behind every number — so you can see exactly which axis is dragging you down, and fix that one first.

Frequently asked questions

What is a good ATS or resume match score?
Treat any single number as relative, not absolute — it scores your resume against one specific job description, not your career. The useful test is the spread: score the same resume against three real postings you want. A wide spread means your targeting is off; a uniformly low set means the resume is.
Why did my score change when I applied to a different job?
Because the score is a comparison, not a grade on your resume alone. Every axis is measured against one job description's requirements, so the same resume legitimately scores differently for two roles. A drop usually means the new posting asks for things your resume never claimed.

Written by

MeritSlate Team

The team building MeritSlate's deterministic scoring engine — nine evidence-anchored axes, a nine-vendor ATS parse simulation, and every point backed by receipts.

Keep reading

All articles
FormattingATSResumes

The best fonts for a resume (and the ones that break parsing)

Which resume fonts survive ATS extraction, what point size and margins to use, and why icon fonts and exotic ligatures turn your resume into unicode garbage.

Aug 9, 20264 min read
FormattingResumesATS

Functional vs chronological resumes: why the functional format fails

The functional (skills-based) resume breaks ATS parsing and reads as concealment to recruiters. What to use instead when your history isn't a straight line.

Aug 9, 20264 min read
CareerKeywordsATS

How to read a job description before you apply

How to tell a hard requirement from a wish, spot the roles that aren't really open, and decide whether a posting is worth twenty minutes of your time.

Aug 9, 20264 min read

Reading about ATS filters is step one. Beating them is step two.

Free account · 2 full scores every day · no credit card.