How resume matching works under the hood
A real resume-to-job match score isn’t one model — it’s the weighted output of four parallel evaluations, each measuring a different dimension of fit. Generic resume scores look at your resume in isolation. The match score looks at your resume in relation to a specific job, which is the only way the number is actionable.
Layer 1: Required vs. preferred keyword overlap
We extract every requirement from the JD and bucket it as required (must-have) or preferred (nice-to-have). The signals: phrasing like ‘required,’ ‘must have,’ ‘3+ years of,’ ‘experience with’ vs. ‘a plus,’ ‘bonus,’ ‘ideally,’ ‘preferred.’ Then we compute your coverage of each bucket. Missing a required keyword costs about 3x more than missing a preferred one — because recruiter Boolean searches usually use the required terms.
Layer 2: Semantic alignment
Beyond verbatim matching, we evaluate whether your resume’s evidence actually supports the role’s expected behaviors. A JD for a Senior PM says ‘led roadmap planning across 4 cross-functional teams’. Your resume can pass the keyword check by saying ‘led roadmap planning’ in a tag dump — but the semantic layer asks: do your bullets show evidence of actually leading roadmap planning? Of working across 4 teams? At what scope? If the words match but the evidence is thin, the semantic score drops and your match score with it.
Layer 3: Seniority calibration
Every JD encodes a seniority expectation in its title, required years, team size, scope, and expected impact. We extract these and score your resume’s evidence against them. Three outcomes:
- Aligned. Your scope, years, and impact map cleanly onto the role’s level. Seniority subscore 80+.
- Under-leveled. The JD calls for a Staff role with cross-team scope; your resume shows individual contributor scope. This is usually flagged with specific gaps: scope of ownership, team size, impact magnitude.
- Over-leveled. Less common, but real — applying to a junior role with senior-level scope often gets auto-filtered for ‘overqualified.’ The report tells you when this is happening.
Layer 4: Domain alignment
Industry-specific language, tooling, and constraints matter — a B2B SaaS PM moving into healthcare PM is a different match than the same PM moving into another B2B SaaS company. The domain layer scores how much of the JD’s industry vocabulary, regulatory context, and customer profile appears in your resume’s evidence.
Reading a resume-job comparison report
The match report has a specific structure designed to drive decisions, not just inform. Here’s how to read it:
- Top-line score. Decide whether to apply at all. Under 60, don’t. 60–74, maybe with edits. 75+, yes.
- Four subscores. Identify the bottleneck. If skills coverage is 85 but seniority is 52, your problem isn’t keywords — it’s visibility of your existing leadership work.
- Missing keyword list. Ranked by JD weight. The top three are usually responsible for 70% of the achievable score lift.
- Suggested rewrites. Each rewrite is built from evidence already in your resume — no hallucinated metrics, no fake claims. Paste and verify.
- Seniority delta. Specific scope/team/impact gaps. If the delta is ‘0.5 years too junior’, apply anyway. If it’s ‘2+ years’, the role is a stretch.
Closing the skills gap (and when not to bother)
Skills gaps fall into three categories, and the right response is different for each:
- You have the skill but didn’t write it down. The most common gap. Fix with a 5-minute bullet edit using the paste-ready rewrite from the report. Score moves 4–8 points per keyword.
- You have adjacent experience that reframes well. The JD wants ‘design systems’; you built a component library at your last job and called it a ‘UI kit’. Reframe with the JD’s terminology. Score moves 3–6 points per gap.
- You genuinely don’t have the skill. The honest answer here matters. If it’s a required skill, the role is probably not the right fit — apply if you’re willing to address the gap in an interview, skip if you’d be lying to claim it. The match score won’t hallucinate the skill into existence.
For a deeper look at the broader scoring model, see What is an ATS score?. For the keyword side specifically, see the resume keyword scanner. Or run a match score against your top three target jobs and use the data to decide which ones deserve the next hour of your time.