Résumé keyword checker
Paste the job description and your résumé, and see exactly which of the posting's keywords your résumé covers and which are missing. Nothing you paste leaves your browser.
Paste both texts (at least 200 characters each) and the comparison appears here. Nothing is uploaded: the analysis runs in your browser.
This checker shows the gap; the free résumé score at /score shows the full ATS critique, and OyaPilot tailors truthfully per posting.
How ATS keyword matching actually works
Applicant tracking systems do not assign mysterious scores. They parse your résumé into fields, and recruiters filter and search those fields by the words from the job description. If the posting says a skill and your résumé does not, you are invisible to that search.
Filters and searches, not magic scores
Most ATSs are databases with a search box. A recruiter filters hundreds of applicants by the terms in the requisition. Keyword matching decides whether you appear in that result set at all, which is why the overlap between your résumé and the posting matters.
Exact phrasing matters
Search is literal more often than you would hope. Use the job description's own words: if it says 'project management', a résumé that only says 'managed projects' can miss a strict filter. Mirror the posting's terms, including singular versus plural, where they are truthfully yours.
Keywords belong in real bullets
The right place for a keyword is inside an experience bullet that shows you actually using the skill, with context and a result. A skills-section keyword dump parses, but it persuades no human reader and it invites questions you cannot answer well.
What not to do
No white text, no keyword stuffing, no inventing skills. Modern parsers render the text a recruiter sees, so hidden text gets found, and an invented skill surfaces in the first interview. The short-term match is not worth the credibility cost.
Why checking beats guessing
You cannot see the gap between your résumé and a posting by rereading either one. A side-by-side term comparison shows exactly which of the posting’s words you already cover and which real experience you forgot to name.
Résumé keywords and ATS matching, the honest answers
Compare the significant terms in the posting against your résumé text. This checker does that in your browser: it pulls the repeated skill and requirement terms from the job description, checks each one against your résumé, and shows the matched and missing lists.
There is no magic percentage, and no ATS publishes a threshold. The useful reading is the missing list: every missing term that is truthfully part of your experience is a free improvement. Terms that are not yours should stay missing.
Rarely automatically. Knockout questions (visa, location, certifications) cause most hard rejections. Keyword gaps hurt differently: recruiters filter and search by the posting’s terms, and a résumé without them simply never appears in the shortlist.
Mirror the exact terms for skills you genuinely have, because search is literal: "PostgreSQL" and "Postgres" can read as different terms to a strict filter. Do not copy sentences wholesale, and never add a term for a skill you do not have.
Inside real experience bullets first, where the keyword sits next to what you did with it and what happened. A concise skills section is fine as a supplement. Avoid dumps, hidden text, and repetition for its own sake: parsers see them and recruiters resent them.
Yes, and no. The analysis runs entirely in your browser: neither your résumé nor the job description is sent to a server or stored anywhere.