ATS Mechanics · 9 min read · Published 2026-05-16

ATS Keywords vs Resume Action Verbs: What Actually Gets You Filtered (2026)

Most resume advice tells you to start every bullet with strong action verbs. ATS parsers don't care about your verbs — they care about specific structural keywords. Here's the difference.

Open any resume-writing guide and you'll find the same advice: start every bullet with a strong action verb. Spearheaded, drove, championed, leveraged. The problem with this advice is that it's aimed at human recruiters, not the ATS filter that actually decides whether your resume reaches a human. ATS parsers don't care that you "spearheaded" something. They care whether the word Python, MEDDIC, ASC 606, or Workday appears in your file. This post is about the difference — and why the action-verb advice that's been recycled since 2009 is actively hurting your match rate in 2026.

The two kinds of "keywords" people confuse

When career-advice sites say "use keywords on your resume," they almost always mean one of two completely different things:

  1. Action verbs — words like spearheaded, drove, championed, leveraged, orchestrated, delivered. These are stylistic choices that affect how a human reads your bullet. They are not what an ATS scores you on.
  2. Structural keywords — words like Python, Kubernetes, MEDDIC, ASC 606, Workday, FP&A, Sukuk, SAP SuccessFactors. These are specific named entities that an ATS parser explicitly tries to match against the job description.

The two are not interchangeable. Most ATS filters in 2026 don't weight action verbs at all. They look for explicit token matches against the JD. If the JD says "Python" and your resume says "developed software in modern programming languages," the parser does not match you. It doesn't understand the synonym. It looks for the literal token.

What ATS parsers actually do with your resume

If you've read our methodology page, you know the 4-stage pipeline: text extraction → structural analysis → keyword matching → score computation. The keyword-matching step is where action verbs and structural keywords diverge.

Every major ATS — Workday, Greenhouse, Lever, Oracle Taleo, iCIMS, SAP SuccessFactors, BambooHR, Jobvite — uses some variation of the same pipeline:

  1. Parse the JD into a list of required and preferred skills/tools/credentials.
  2. Parse the candidate's resume into a flat token stream.
  3. Score the match between the two using TF-IDF, exact token matching, or (increasingly) a small embedding model.

"Spearheaded" appears in roughly zero job descriptions. Neither does "championed," "orchestrated," "leveraged," or any of the other 50 most-recycled action verbs. They are absent from the JD-side of the match entirely. So no matter how strong they make your bullet read to a human, they contribute essentially nothing to your ATS match score.

"Python," on the other hand, appears in roughly 70% of software-engineer JDs. "MEDDIC" appears in 40%+ of enterprise sales JDs. "ASC 606" appears in nearly every senior accounting JD. These are the tokens the parser is actually scoring against.

The "75% of resumes get filtered" problem reframed

The widely-cited statistic — 99% of Fortune 500 employers use ATS and industry studies suggest 75% of resumes get filtered before any human review — gets misread as "the ATS is hostile." It isn't. The ATS is just running keyword matching. It filters out resumes that don't score above a threshold. And the resumes that don't score above the threshold are usually the ones written entirely in action verbs with no structural keywords.

Picture two candidates applying for the same Senior Software Engineer role:

Candidate A (action-verb resume)Candidate B (keyword-aware resume)
"Spearheaded the development of a scalable platform serving millions of users" "Built a Python / Django microservices platform on AWS (EKS, RDS PostgreSQL) serving 14M users/day with 99.95% uptime"

To a human, Candidate A's bullet might read as slightly more polished. To Workday's parser, Candidate B's bullet contains Python, Django, microservices, AWS, EKS, RDS, PostgreSQL, uptime — eight named tokens that almost certainly appear in the JD. Candidate A's bullet contains spearheaded, scalable, platform, users — of which "scalable" and "platform" might match, but the rest are stylistic.

Candidate B passes the keyword filter. Candidate A doesn't.

Why action verbs still matter (just not for ATS)

To be clear: action verbs aren't useless. They affect how the human recruiter reads your bullet after the ATS has already passed it through. A recruiter scanning 50 resumes that all cleared the keyword filter will lean toward bullets that read with energy and ownership.

The mistake is treating action verbs as the keyword strategy itself. They're the second layer of polish — applied AFTER you've nailed the structural keywords. If you only have action verbs and no structural tokens, you don't get to the second layer. The ATS never lets a human see your resume in the first place.

What "structural keywords" look like by profession

Structural keywords are profession-specific. Generic resume advice doesn't work because the keywords for a Software Engineer are completely different from the keywords for a Financial Analyst or a Customer Success Manager. We've published a sourced keyword database with profession-tiered lists for the 10 most-applied-for roles — you can browse the full set at /keywords. A few examples:

  • Software Engineer: Python, Kubernetes, microservices, distributed systems, scalability, observability, CI/CD pipelines, system design. Tiered by seniority — what a junior engineer should surface is not what a Staff engineer should surface.
  • Finance Professional: FP&A, three-statement model, DCF, variance analysis, ASC 606, ASC 842, IFRS 15, SOX compliance, NetSuite, Anaplan, Hyperion.
  • Sales (AE / Enterprise): Pipeline coverage, MEDDIC, MEDDPICC, Challenger, ACV, multi-threading, Salesforce, Outreach.io, Gong, win rate, NRR.
  • Data Scientist: pandas, scikit-learn, PyTorch, TensorFlow, A/B testing, causal inference, MLflow, feature engineering, model deployment, MLOps.
  • Banking Analyst (UAE / India): Sukuk, Shariah-compliant structuring, DIFC, ADGM, SEBI, RBI, QIP, FEMA, three-statement model, LBO model.

Notice the pattern: every keyword is a specific named entity. None are generic action verbs. None are descriptive adjectives. They are tokens an ATS parser can match exactly against a JD.

The keyword-stuffing trap (don't do this)

If structural keywords are what passes the filter, the temptation is to stuff your resume with every possible keyword. This backfires in 2026. Modern ATS parsers (especially Workday and Greenhouse) deweight resumes where:

  • Skills sections list 30+ technologies you couldn't reasonably have used in depth.
  • Keywords appear in white text on white background (yes, this is still tried, and yes, parsers strip styling and detect it).
  • The same keyword appears 8+ times in a single resume — recent Workday and Greenhouse releases penalize keyword density above ~1.5%.
  • Keywords are loaded into a "Skills" block but never appear in actual experience bullets.

The fix isn't to stuff. The fix is to surface the 8–15 keywords that genuinely describe your work, both in a dedicated Skills section AND naturally woven into your experience bullets. Depth beats breadth.

How to actually rewrite a bullet for keyword density without losing voice

Take a typical action-verb-heavy bullet:

"Spearheaded data-driven initiatives that drove customer engagement and improved retention."

Five action verbs, zero structural keywords. Now rewrite with the same length but real tokens:

"Built customer-segmentation model in Python (scikit-learn) and shipped A/B tested onboarding flow via Optimizely; lifted D30 retention from 22% to 34% across 180K monthly actives."

Same action ("built" instead of "spearheaded"), but now customer-segmentation, Python, scikit-learn, A/B test, Optimizely, D30 retention, monthly actives — seven structural keywords. The action is implied by "built" and "shipped"; the keywords are the work.

This is the discipline. Keywords first, voice second. Most resume guides have it backward.

What to do next

  1. Read your target JD twice. Highlight every specific named entity (tool, methodology, certification, framework, technology, regulation). These are your keyword targets.
  2. Cross-reference our profession keyword database for your role + seniority tier. Identify any keywords from the JD that you genuinely have but haven't surfaced on your resume.
  3. Run your resume through our free scanner to see which keywords actually extract from your current file. Many "modern" resume templates scramble keyword lists into sidebars that Workday and Greenhouse read separately from your experience.
  4. Rewrite 3–5 bullets to surface the keywords that genuinely describe your work. Don't add keywords for things you didn't do — that's the start of the stuffing trap.

The action-verb advice you've been given since 2009 isn't wrong, just incomplete. Use action verbs as the polish layer. Use structural keywords as the structural layer. The ATS only ever sees the structural layer — make sure that one's right first.

Run a free ATS scan and see which keywords actually parse from your current resume.

Share:LinkedInX (Twitter)

Free tools that pair with this article

Bullet Rewriter
Score any bullet 0-100. STAR / XYZ / PAR rewrites.
Keyword Extractor
Pull top weighted keywords from any JD.
Cover Letter Checker
Score length, weak phrases, and JD match.
Resume Length Checker
Word count, page estimate, trim/expand verdict.
Related links

Run your resume through the ATS — for free

See exactly what an ATS reads (or doesn't). Takes 30 seconds.

Scan my resume free →
Written by
ATS Verification Team

We test resumes against the parsing engines used by Workday, Greenhouse, Lever, Taleo, iCIMS and more. Articles distill what we've learned from real ATS extraction outputs. No fluff scores, just receipts.

Published May 16, 2026·9 min read
Try the free ATS scanner →See all 5 free tools

Related articles

Scan resume free