Resume & Job Description Matcher
Paste a job posting and your resume to see which of the posting’s terms are missing from yours. Requirements count more than nice-to-haves, and the equal-opportunity boilerplate counts for nothing.
The “75% of resumes are rejected by an ATS” claim is not real
Every keyword tool on the internet is sold on the same line: three quarters of resumes are thrown out by a robot before a human sees them. Sometimes it is 70%, sometimes 90%. Follow the citation and it never arrives: each article cites another article, which cites a vendor blog post, which cites nothing. There is no study. We will not repeat a number we cannot source, and you should distrust any tool that does while selling you the fix for it.
Here is what an applicant tracking system actually is. Workday, Greenhouse, Lever, iCIMS, Taleo and the rest are databases with a search box and a workflow attached. Your application lands in a table. A recruiter opens it, filters by requisition, and searches for the two or three things they were told to find — a license, a system name, a certification. The system returns everyone who matches and a person reads them. There is no scoring robot deciding your worth.
Automatic rejection does exist, but it is narrower and more visible than the myth suggests. Employers configure knockout questions on the application form: are you authorized to work here, do you hold an active RN license, do you have a valid CDL. You answered those yourself, on screen. The other real failure mode is parsing — a two-column layout or a text box can come out of the parser scrambled — and that is a formatting problem, not a keyword problem.
So what is keyword matching actually for? Surfacing. If the recruiter searches “Epic” and your resume says “electronic health records”, you are not in the result set. Using the employer’s own words for things you have genuinely done is how you show up in the search. That is the whole benefit: real, worth twenty minutes, and not a robot to defeat.
How this tool scores a posting
Most free matchers intersect two bags of words and show you the overlap. That produces garbage, because a job posting is largely not about the job: a good part of it is company blurb, benefits and legal boilerplate. We have not measured a representative sample of postings, so we are not going to put a percentage on that — but leave that text in and a naive matcher will happily tell you that you are missing “opportunity”, “employer” and “dental”. This tool works in one pass, in your browser, like this:
- Segment the posting. Headings are detected and each block is weighted: requirements and qualifications count double, ordinary body text counts once, preferred and nice-to-have blocks count 0.6, and “about us”, benefits and equal-opportunity sections count zero. Sentences containing EEO language are zeroed wherever they appear, headings or not.
- Strip boilerplate. 161 authored phrases — “the ideal candidate”, “other duties as assigned”, “fast-paced environment”, “reasonable accommodation” — are removed before any counting, and each removal breaks the sentence so no phrase is built across the gap.
- Extract one-, two- and three-word terms and filter them against 258 stopwords. Punctuation is kept inside tokens, so C++, C#, .NET, Node.js and A/B testing survive intact, while hyphens split, so “detail-oriented” matches “detail oriented”.
- Collapse word endings. A small, predictable stemmer folds manage / managed / managing / management / manager onto one root, and rolls back any rule that would leave a stub under three characters. It never touches a token carrying a symbol.
- Rank by specificity. Weighted frequency is multiplied by how unusual the wording is, measured against a shipped list of 835 very common English and business words, then by category: certifications outrank hard skills, which outrank soft skills. That is why Kubernetes beats communication.
Matching against your resume uses the same stemming plus 157 acronym pairs, so PM and project management, AR and accounts receivable, RN and registered nurse, CDL and commercial driver’s license are understood as the same thing — and reported honestly as “present only as an acronym” rather than counted as a clean match.
A worked example, with the arithmetic
Load the built-in example (a warehouse operations supervisor posting) and look at two terms. “Cycle counting” appears twice: once under Responsibilities (weight 1.0) and once under Requirements (weight 2.0), so its weighted frequency is 3.0. Neither word is on the common-word list, so its specificity is 1.5. It is in the hard-skills list (×1.25) and it is a two-word phrase (×1.1). Its score is 3.0 × 1.5 × 1.25 × 1.1 = 6.19.
“Communication” appears once, in the Requirements block, so its weighted frequency is 2.0 — higher than you might expect. But it is on the common-word list, so its specificity is 0.5, and it is a soft skill (×0.7). Its score is 2.0 × 0.5 × 0.7 = 0.70. Cycle counting therefore ranks about nine times higher, which is the correct answer: a hiring manager can teach you to communicate on the job, and cannot teach you their inventory process in the interview.
The same example also shows the acronym check working. The posting says “lockout tagout”; the sample resume says “LOTO”. A human sees no difference, a search does, and the report says so instead of scoring it as a miss.
The example is also the only place we will put a number on boilerplate, because it is the only posting we can measure for you. It is 198 words — the counter under the box says so the moment you load it. Of those, 65 are in the two paragraphs the tool never scores: the company blurb under “About us” and the equal-opportunity notice at the end. Eight more are removed as boilerplate phrases from lines that do count — “hands-on experience”, “working knowledge of”, “is a plus”. That is one posting we wrote, not evidence about postings in general, but it is the difference between a report about the job and a report about the benefits package.
Edge cases, and what this does not model
It matches words, not meaning. Phrase order matters: if the posting says “inventory management” and your resume says “managed inventory”, the phrase is reported missing — though the report will tell you that every word is present but not side by side, which is usually the more useful information. It cannot tell alternatives apart, so “high school diploma or GED” produces two terms and you should only add the one you hold. It has no idea how your PDF parses, whether your columns survive, or what the recruiter will actually search for. It does not read your dates, so if the posting asks for five years, write the number somewhere rather than expecting anyone to add up your job history.
Two practical notes. Paste the posting with its original line breaks, because block detection depends on headings; the report warns you when it could not find any. And if it flags a word you have used five or more times, that is not a keyword win, it is a tell — two or three uses is plenty, and beyond that a human reader sees padding. When the fix is a rewrite rather than a word swap, the bullet point generator and the resume checker are the next two stops.
Weightings: requirements block ×2.0, body text ×1.0, preferred block ×0.6, boilerplate ×0. Vocabulary: 258 stopwords, 161 boilerplate phrases, 835 common words, 482 hard skills, 127 certifications, 81 soft skills, 240 job titles and 157 acronym pairs, all hand-written for this tool and last reviewed 8 August 2026. The exact list sizes are printed under every report you run. There are no external constants in this tool — no rate table, no government figure, nothing with an expiry date — and no third-party data source. Nothing you paste leaves your browser.
Next steps
Resume and job description matcher FAQ
Is this an ATS scan?
Is it true that 75% of resumes are rejected by an ATS before a human sees them?
What coverage percentage should I aim for?
Should I add keywords I do not actually have?
Why is a term marked missing when my resume says something similar?
What does "acronym only" mean?
Does this work for jobs outside tech?
Is my resume uploaded anywhere?
Ready to put your application together?
Every tool is free, runs in your browser, and needs no account. Start with the resume builder or jump straight to a cover letter.