Offermic

Resume Keywords From a Job Description: How a Match Is Counted

A documented ATS keyword filter wants an exact match and says nothing about repeats. How a keyword match is counted, and where it turns into stuffing.

Updated

Written by

The short answer

A keyword match asks whether a term is on the page, not how often. Greenhouse documents a recruiter filter that needs an exact match, and our builder counts each term once, weighted by how firmly the posting asks for it. Write each skill you really have once, in the posting's spelling, inside a line that shows the work.

Key takeaways

  • Greenhouse's recruiter keyword filter says a searched keyword "must exactly match the keyword in the application".
  • In our builder's job match a term counts once wherever it prints, so repeating it does not raise the percentage.
  • Case, accents, punctuation and plurals are ignored, and a short list of aliases such as JS for JavaScript counts as one term. Other word forms do not: "troubleshot" is not "troubleshooting".
  • A longer posting term needs the longer form on the page: "Excel" does not count for "Microsoft Excel", though the reverse works.
  • A bare skills list can take the match to 100%, so the percentage cannot tell a supported keyword from a stuffed one.

Keywords help a resume get found; repeating them does not make the experience behind them more convincing.

Greenhouse documents a recruiter keyword filter that requires the search term to exactly match the application. It labels terms Required, where all must appear, or Preferred, where one is enough. The documentation says nothing about repetition. In a system like that, the useful question is whether you have named a real skill in the spelling a recruiter may search for.

Greenhouse does not say which employers use this filter, so it is one documented example, not a universal rule. Our own builder also counts a term by presence rather than frequency. The product details below are based on its code as of October 31, 2026; we make that builder and have a stake in describing it accurately.

Exact matching is not the only kind of matching

Greenhouse documents a second matcher that works differently. Talent Matching, part of its Real Talent product, sorts applicants into match groups, Strong, Good and Partial among them, against a calibration the hiring team sets up. Its FAQ says that for skills “it compares related terms on each resume to the calibrated skills you set, and multiple terms can map to the same calibrated skill — so a longer list of matched terms doesn’t always mean a higher match score.” In one product, then, there is a literal search and a comparison of related terms, and nothing we read tells an applicant which of them a recruiter is using. Our guide to Greenhouse and your resume goes through both features.

Career advice tends to plan for the literal case. MIT’s career office warns: “Avoid abbreviating relevant keywords as an ATS may not properly consider it as it rates your resume.” Jobscan, a company that sells a resume scanner, has a guide to finding keywords in a posting that marks tools and technologies with “match these exactly” and credentials with “Spell out and abbreviate”. Both come down to the same habit: use the employer’s own words for the things you can do.

How our builder weights a match

The job match starts with one AI step and then stops using AI. When you paste a posting, a model reads it once and lists its key skills, its tools and technologies, its must-have lines and its nice-to-have lines, and the posting is saved under your jobs. The rest is deterministic code, so the same resume against the same saved posting always gives the same result.

The terms themselves come from the key skills and the tools and technologies; the must-have and nice-to-have lines decide how much each one weighs. A tool or technology, or a key skill that a must-have line names, is marked Must-have and is worth 3 points. A key skill named in a nice-to-have line and in no must-have line is marked Nice to have and is worth 1. Any other key skill is marked Key skill and is worth 2. The percentage at the top of the panel is the points of the terms found divided by the points of all the terms, and the line under it counts terms, as in “4 of 6 keywords found”. At most 30 terms are kept, must-haves first.

The match looks only at what prints: the headline, the summary, each entry’s title, organization and location, and its bullets, which include the items of a skills list. A section or entry hidden in the editor counts for nothing, and so do contact details, dates and section headings. A term is found or not found. Where it is found, the panel can take you to it and mark it on the preview, which is the PDF you would download, so each mark sits on a word the file really holds.

A small example: support work

The posting, the company and the applicant in this example are made up. Suppose a posting for a technical support specialist comes back from the reading step with six terms:

Term Where the posting puts it Marked Points
Zendesk tools Must-have 3
SQL databases and a must-have line Must-have 3
troubleshooting key skills and a must-have line Must-have 3
customer service key skills and a must-have line Must-have 3
written communication key skills only Key skill 2
Jira key skills and a nice-to-have line Nice to have 1

The applicant is a support associate at a scheduling app, and her resume has these lines:

Support associate with two years of customer support for a scheduling app.

Answered customer emails and chats in Zendesk about login and calendar-sync problems.

Troubleshot sync errors with engineers and wrote the steps that reproduced them.

Wrote 12 help-center articles on calendar setup.

Skills: Zendesk, MySQL, Excel

The match finds one term out of six and reads 20%, which is Zendesk’s 3 points out of 15. “Troubleshot” is not “troubleshooting”, “customer support” is not “customer service”, and “MySQL” does not contain SQL as a word of its own. Writing “Zendesk” into thirteen more bullets leaves the figure at 20%.

Now suppose the following is all true of her. She changes the summary to “Customer service and technical support associate with two years on a scheduling app.” She rewrites the third line as “Handled first-line troubleshooting of sync errors with engineers and wrote the steps that reproduced them.” And she adds a bullet for work she had left out: “Ran SQL queries in MySQL to find duplicate customer accounts before a data migration.” The match now reads 80%, four terms of six, and every new term sits in a sentence that says what she did with it.

The spelling rules that surprise people

Most surprises are in the rules for “the same word”, so here they are with the results the code gave us.

Case, accents and punctuation are ignored, and the words of a term may be run together or split: “Node.js”, “NodeJS” and “Node JS” all count for a posting that says Node.js, and “ZENDESK” counts for Zendesk. A plural counts for its singular, so “APIs” counts for API and “policies” for policy. No other word form does. “Troubleshot” and “troubleshoot” do not count for troubleshooting, and “communicated” does not count for communication. Terms are matched as whole words, so “MySQL” is not SQL and “JavaScript” is not Java.

A short list of names counts as one term in both directions: JavaScript and JS, TypeScript and TS, Kubernetes and k8s, PostgreSQL and Postgres, AWS and Amazon Web Services, GCP and Google Cloud, Azure and Microsoft Azure, Machine Learning and ML, Artificial Intelligence and AI, REST and RESTful, Go and Golang, CI/CD and Continuous Integration. It is short on purpose; a pair goes in only when resumes and postings use the two forms interchangeably. When a posting writes a name with its short form in brackets, as in “Customer Satisfaction (CSAT)”, either spelling counts. Outside those cases a short form and a full name are different terms, so “PMP” on the page does not count for “Project Management Professional”, and the full name does not count for “PMP”.

The longer term needs the longer text. A posting that asks for “Microsoft Excel” is not matched by “Excel” alone, and one that asks for “React.js” is not matched by “React”, while “Microsoft Excel” on a resume does count for a posting that says only Excel. Some tool names are also everyday English words, and those count only when written as a name, with a capital letter. “I excel at reconciliations” does not count for Excel, “the rest of the team” does not count for REST, and “Go” and a few others do not count as the first word of a sentence.

The practical rule is the same one MIT gives: use the posting’s spelling once, in a line you can support. For a credential with two common forms, “Project Management Professional (PMP)” puts both on the page naturally.

When matching turns into stuffing

Jobscan’s post on the subject defines keyword stuffing as loading a resume with so many keywords that it is either “no longer a true representation of their abilities” or “geared towards the ATS technology with no regard for a human reader.” It describes three forms: dishonest or out-of-context skills, hidden keywords typed in white text, and over-optimized sentences, illustrated by an example bullet that comes back to “social media” again and again.

Repetition is the easiest of the three to give up, because in our match it adds nothing. The first form is harder, because the count rewards it. In the example, adding “Written communication” and “Jira” to her skills list takes the match from 80% to 100%, and a resume made of nothing but a skills list with the six terms also reads 100%. Nothing in the count separates a skill she used every day from one she typed in because the posting asked for it. That is the line Jobscan draws with “true representation”, and MIT puts it in one sentence: “You will still need to be able to account for everything indicated on your resume.”

The two additions are not alike. Someone who wrote twelve help-center articles can make a fair case for written communication, and a bullet that shows the writing is better evidence than the phrase in a list. Jira, which she never used, is a claim she could not support if an interviewer asked about it. Hidden text has no way into our count at all, since the match reads only what prints.

Decide what to do with a missing term

For each missing term the panel offers three answers, and it never fills one in for you. “I have it: add to skills” puts the term, in the posting’s spelling, into your skills list. “I have it: write a bullet with AI” drafts a new bullet for an entry you choose, from that entry, its other bullets and an optional note on what you did with the skill. The model’s instructions say to write the term exactly as the posting gives it, once in each version, and to leave a placeholder such as “[task]” wherever your input does not say what you did. The resume is left alone until you pick a version. “Not for me” sets the term aside on this device, under its own heading, where you can bring it back. Setting a term aside does not change the percentage, which still counts every term the posting asks for.

Whether you can honestly claim a missing term, and how to show the evidence, is a tailoring question. Tailor Your Resume Without Inventing Experience offers a worksheet for it. The match does not change the builder’s resume score, and a perfect match only means the words are on the page—not that you fit the role. The builder page explains the feature in full under job match.

The nice-to-have terms are the easiest to let go. Of a certification listed in the preferred section of its sample posting, Jobscan’s guide says to “include it if you have it, and leave it off without worrying if you do not.” In our weights a term like that is worth 1 point of the posting’s total, the least any term can count.

Questions people also ask

How many times should a keyword appear on my resume?

We found no primary source that sets a number. In the Greenhouse keyword filter we read and in our own builder's match, a term either appears or it does not, so for those two, once in a line that shows the work is enough. Jobscan's post on stuffing warns that "overloading sentences in an unnatural way hurts more than it helps."

Should I write the acronym or the full name?

MIT's career office advises against abbreviating relevant keywords. Writing the full name with the short form in brackets, such as "Project Management Professional (PMP)", puts both spellings on the page, and in our builder's match either posting spelling then counts.

Does a 100% keyword match mean I fit the job?

No. A match says the words are printed, not that the work behind them happened. Our builder's job match is not part of its resume score, and a skills list on its own can reach 100%.

Do hidden keywords in white text work?

Jobscan describes the trick and says keyword stuffing with hidden text "is easily spotted and one of the quickest ways to burn a bridge with a recruiter." Our builder's match reads only what the resume prints.

Sources

  1. Talent Filtering, Greenhouse Support (2026-10-31)
  2. Talent Matching FAQ, Greenhouse Support (2026-10-31)
  3. Make your resume ATS-friendly, MIT Career Advising & Professional Development (2026-10-31)
  4. Are You Guilty of Resume Keyword Stuffing? (Hogan Short, November 14, 2024), Jobscan (2026-10-31)
  5. How to Find the Keywords in a Job Description (and Actually Use Them) (Eric Canzano, July 15, 2026), Jobscan (2026-10-31)

Written by, Resume writer

Egem Garip specializes in resumes and writes about presenting work experience clearly, tailoring applications and preparing to explain resume claims in interviews.

How we write