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%
| Axis | Evidence source |
|---|---|
| Skills & keywords | JD-weighted taxonomy match + synonym / implication expansion |
| Experience fit | Per-stack years-of-experience diff + title & seniority trajectory |
| Quantified metrics | % of bullets with numbers / % / $ (deterministic bullet analysis) |
| Action verbs | Strong-verb starts, passive-voice & weak-phrase flags |
| Semantic coverage | JD-requirement vs resume TF-cosine, section-weighted |
| Seniority | Title / level match vs JD seniority expectation |
| ATS format | Nine-vendor parser simulation + file inspector signals |
| Domain / industry | Domain background vs JD context (with anti-contamination gates) |
| Title fit | Most-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
Read the gap list before the number
The score summarizes what the gap list says in detail. The list is the actionable half.
- 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
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:
- Score against one real posting you want, not a generic template.
- Open the lowest axis by weight contribution, not the lowest raw number.
- Fix only what the evidence drawer names — the missing must-have skill, the three bullets with no outcome, the header the parser dropped.
- Re-score. Because the engine is deterministic, any movement is your edit.
- 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.
