How to Beat ATS in 2026: A Complete Guide From People Who Run the Other Side
If you have applied for a job recently and felt like your resume vanished into a void, you are not imagining it. Most resumes never reach a human reviewer. They are filtered out by software, an Applicant Tracking System, or ATS before anyone with eyes sees them.
This is a guide to making sure that does not happen to you.
We have run a recruitment practice for 5 years across US, UK, and Indian tech companies. We have logged into Workday dashboards, sorted through Greenhouse pipelines, exported candidate lists from Lever, set up scorecards in Ashby, and reviewed parsed resumes in Naukri's RMS. What follows is what actually happens to your resume in those systems, and what to fix.
The 7 fixes that matter most
Before going deep into each ATS, here is the practical checklist that follows from the mechanic above. If you do nothing else, do these:
| Fix | Why it matters |
|---|---|
| Use a clean single-column layout | Two-column layouts confuse most ATS parsers, breaking the data the recruiter then searches |
| Save as .docx for most ATS, .pdf only when explicitly accepted | Some ATS still struggle with PDF; .docx is the safer default is safe |
| Include keywords from the job description verbatim | Recruiters search the ATS for exact terms, if your resume does not contain them, you do not appear in their results |
| Use standard section headings (Experience, Education, Skills) | Creative headings ("My Journey") often fail to parse, so the recruiter's search misses those sections |
| Spell out acronyms once, then use the acronym | Different recruiters search "SEO" vs "Search Engine Optimization" — covering both means you appear in either search |
| Submit within 48 hours of the role being posted | Most ATS sort by date applied; recruiters review the top of the queue and rarely reach the bottom |
| Use the job title from the JD as your most recent title, if it honestly describes your role | Title match is what recruiters search; an accurate-but-aligned title makes you searchable |
The rest of this guide explains why each of these works and what specifically to change.
What an ATS actually does
An Applicant Tracking System is software that companies use to manage hiring. It does several jobs, receives applications, organizes candidates, schedules interviews, runs through approval workflows, but the part you care about is what happens to you specifically after submit.
Here is what actually happens, contrary to a lot of internet advice:
Step 1. Your resume gets uploaded to a form on a company's careers page.
Step 2. The ATS parses your resume, converts the file into structured data (name, contact, work history, skills, education).
Step 3. Knockout questions run automatically. "Do you need visa sponsorship?" "Are you legally authorized to work in this country?" Wrong answers here trigger automatic rejection. This is the only true "automatic filter" most ATS apply.
Step 4. Your application enters the recruiter's queue, sorted by date applied (most ATS default).
Step 5. The recruiter opens their dashboard. To narrow the queue, they type keywords into the ATS search bar — "Kubernetes," "PostgreSQL," "5 years experience," and so on. The ATS returns the applications matching those keywords. The recruiter reviews the top results from their search.
Step 6. If you do not have the recruiter's keywords in your resume, you do not appear in their search results. The recruiter never sees you, even though you are technically still in the system.
This is the part most ATS advice gets wrong. There is no robot assigning your resume a "78% match score" and hiding candidates below 60%. That is a myth invented largely by resume-writing services. The reality is simpler and more useful: recruiters use the ATS search bar like a mini-Google. If your resume does not contain the exact terms they search for, you are invisible to them.
(Workday is the partial exception, it does have some scoring features, and large enterprises sometimes configure auto-routing rules. But even at Workday-using companies, most recruiters spend their time on search and date-sorted queues, not algorithmic scores.)
The practical implication: optimize your resume for what a recruiter is likely to type into the search bar, not for what an algorithm scores. The targets are usually the same, exact keywords from the JD, relevant role titles, key technologies, but the framing matters because it changes how you think about borderline decisions.
It also explains why applying early matters as much as keyword optimization. Recruiters work the queue top-down. The candidates who applied yesterday get reviewed before the candidates who applied last week. Even with perfect keywords, if you are at position 200 of 300 in the date-sorted queue, the recruiter may close their tab before reaching you. We will come back to this.
The major ATS systems and what each one is like
Different ATS behave differently. The advice that works for one can fail in another. Here is the practical truth about the systems you are most likely to encounter.
Workday (large enterprises — Amazon, JP Morgan, most Fortune 500)
The most finicky parser among major systems. Workday handles PDFs better than it used to, modern Workday installations are reasonable, but it still gets tripped up by complex formatting more often than newer systems do. Resumes with images, fancy fonts, two-column layouts, or header/footer text can lose information passing through Workday's parser, even in 2026.
What to do for Workday:
- Default to
.docxover PDF. PDFs work most of the time now, but.docxis more predictable. - Single column only. Two-column layouts are still where Workday parsing breaks most often.
- Use the most standard section headings: "Work Experience," "Education," "Skills." Not "What I Did," not "My Background."
- Avoid header/footer text. Workday often loses it.
- Spell out company names, Workday cross-references against its company database to enrich your application.
If you are applying to a Fortune 500, assume Workday and format defensively. The cost is nothing; the upside is that more of your resume actually reaches the recruiter intact.
Greenhouse (startups and mid-market tech — Stripe, Airbnb, Notion, many Series B+ companies)
Greenhouse is well-built. The parser handles most formats reasonably. PDFs are usually fine. Two-column layouts can still cause issues, but recoverable ones.
What helps in Greenhouse:
- Greenhouse heavily weights the role title in your most recent job. If the JD says "Senior Software Engineer" and your title is "Senior Engineer," consider whether you can honestly write "Senior Software Engineer", that small change can move you up the queue meaningfully.
- Greenhouse uses recruiter-defined scorecards more than automatic scoring. Optimize for what a human recruiter sees: clean structure, clear impact statements, quantified results.
- Greenhouse allows custom application questions. Answer them substantively, not "see resume." Many recruiters filter the queue by application question quality before looking at resumes.
Lever (mid-market tech, often replacing Greenhouse — Shopify, Eventbrite, KAYAK)
Similar to Greenhouse in parsing quality. Lever's distinguishing feature is its CRM-style approach, recruiters can leave detailed notes, candidates flow through stages, and historical applications are visible.
What this means for you:
- If you have applied to a Lever-using company before and been rejected, your record is still there. The recruiter sees that you applied two years ago and was a no. This is rarely disqualifying, but a generic resume that has not improved since the last attempt makes it easy to say no again. If you are reapplying, the resume should be visibly different and stronger.
- Lever shows recruiters "source" data prominently. Coming in via a referral or a LinkedIn application looks different from a cold web-form submission. Where possible, get a referral first.
Ashby (newer, fast-growing — Linear, Vercel, Ramp)
The most modern parser of the major systems. Handles most formats well, including some that break older ATS. Ashby is built around data and reporting; recruiters using Ashby tend to be data-driven and look at metrics-heavy resumes more favorably.
What helps in Ashby:
- Quantify everything. "Reduced latency by 40%," "led migration to event-driven architecture serving 50K requests/second," "managed $200M procurement budget." Ashby's culture rewards specifics.
- Skills section matters. Ashby's search is powerful, and recruiters use specific skill filters. List the technologies you genuinely know.
Naukri RMS (India — most Indian tech companies, Infosys, Wipro, TCS, plus startups)
Naukri's parser has improved a lot but still handles .docx better than PDF. Naukri also has the unique behavior of weighting the "last active" date heavily, if your Naukri profile is not refreshed recently, you drop in recruiter searches even if your resume is strong.
What helps in Naukri:
- Update your Naukri profile every 2 weeks while job-hunting. Even a tiny edit refreshes the last-active date.
- Use
.docx. - Include both the role title and the technology stack in your headline.
- Notice period matters. Indian recruiters filter aggressively by notice period. If you have flexibility, say "Immediate" or "15 days", it moves you up the queue significantly.
LinkedIn Easy Apply
LinkedIn is its own system. The Easy Apply flow uses LinkedIn's profile data as your effective resume, not the file you upload. That means:
- Your LinkedIn profile is your resume for Easy Apply jobs. Keep it more updated than your resume file.
- The headline is critical. "Senior Software Engineer at Stripe" beats "Engineer | Coffee Enthusiast | Always Learning."
- The "Open to Work" toggle materially changes how often you appear in recruiter searches. Turn it on (privately if you are still employed).
The resume mistakes that kill your application
Most of these are not stylistic preferences. They cause ATS parsers to lose information.
Two-column layouts. They look modern and they break parsers. The right column often ends up parsed as a continuation of the left, or dropped entirely. A clean single-column layout always beats a stylish two-column one.
Headers and footers. Many ATS skip header/footer text entirely. Putting your name and contact info only in the header means the ATS may not have your name. Put contact info at the top of the body of the resume.
Tables. A "Skills" section formatted as a 3-column table often parses as one long run-on row, or fails to parse at all. List skills as a comma-separated line: "Python, JavaScript, React, AWS, Docker."
Graphics for skills (5-star ratings, bar charts). Pure visual decoration. Parsers cannot read them. List the skill name and let the recruiter ask about proficiency.
Photos. Required in some countries, banned in others. Photos confuse parsers and trigger bias-prevention filters in some US ATS. Default to no photo unless culturally expected (some non-US markets do).
Creative section headings. "My Journey" instead of "Work Experience." "What I'm Passionate About" instead of "Summary." Parsers look for standard section markers. Creative headings can cause entire sections to be misclassified.
Non-standard fonts. Some fonts render as missing or garbled in older parsers. Stick with: Arial, Calibri, Helvetica, Times New Roman, Garamond, Cambria. If the recruiter cannot read your font in their PDF preview, you are out.
Dates in non-standard formats. "Summer 2023" or "Late 2022" are not parseable as dates. Use "May 2023 – Present" or "Jun 2022 – Aug 2023."
Skipping dates entirely. A resume with no dates reads as a hiding-something signal. If you have gaps, address them briefly ("Career break for caregiving — Mar 2023 to Aug 2023") rather than removing dates.
Keywords — what to include and how
Recruiters narrow their queue by searching the ATS for specific terms. The keywords that matter are not random — they are the specific skills, technologies, certifications, and role-language the JD uses, because those are what the recruiter will type into the search bar.
The right approach: copy the job description into a text editor. Identify the 15-20 most-repeated nouns and noun phrases. These are your target keywords. Make sure each one appears at least once in your resume, in context, where it is honest.
The wrong approach: keyword stuffing. Listing "Python, Java, C++, Rust, Go, Scala, Kotlin, Swift, Ruby" when you have only worked in Python. The bigger risk is not algorithmic, it is the recruiter. A resume listing 30 technologies for a 2-year-experience role reads as inflation, and the recruiter throws it out as soon as they open it. Same outcome as not being keyword-rich at all: you are out.
The verbatim rule: if the JD says "Kubernetes," do not write "K8s" on your resume. Use both ("Kubernetes (K8s)"), or use whichever exact phrasing the JD uses. ATS match exact strings; "Kubernetes" and "K8s" do not match in a strict-match system.
Spell out acronyms at least once. "Search Engine Optimization (SEO)" — different recruiters search both versions. Cover both.
File format — the actual answer to "does ATS read PDF"
You will see articles confidently saying "always use PDF" and others saying "never use PDF." Both are wrong. The right answer depends on the ATS.
| ATS | Best format |
|---|---|
| Workday | .docx |
| Greenhouse | .pdf or .docx (both fine) |
| Lever | .pdf or .docx (both fine) |
| Ashby | .pdf or .docx (both fine) |
| iCIMS | .docx (PDF parsing is unreliable) |
| Naukri RMS | .docx |
| LinkedIn Easy Apply | LinkedIn uses your profile, not your file |
| Older / no-name ATS | .docx (safer default) |
The safe default: .docx. If the application form specifically asks for PDF, use PDF. Otherwise, .docx works with more parsers more reliably.
When you save as .docx, save with a clean filename. Hemant_Kumar_Senior_Software_Engineer.docx — not resume final v3 (1).docx. The filename is the first thing the recruiter sees in their dashboard.
The part nobody talks about — apply early
We mentioned this in the TL;DR but it deserves its own section because it is genuinely the highest-leverage tactic and gets discussed least.
Recruiters review applications in the order they arrive. Most ATS sort by "date applied" by default. A recruiter opening their dashboard at 9 AM on Tuesday looks at the candidates who applied since Monday morning first, in chronological order.
If you apply within the first 24-48 hours of a role being posted, you are likely in the top 25 candidates the recruiter sees. After 48-72 hours, you are in the second hundred and most recruiters do not get past the first 25-50 in their daily review.
How to apply early:
- Turn on job alerts for your target roles on LinkedIn, Naukri, and the specific company career pages you care about. Most companies offer email alerts on their careers page.
- Use AI Auto Apply tools (we built one, others exist) to apply to roles as soon as they post.
- Subscribe to RSS feeds or APIs that surface new roles within minutes of posting on major ATS platforms.
- Reach out to hiring managers directly when you see a hint that hiring is coming (team expansion announcements, funding rounds, new product launches).
This single tactic, applying within 48 hours, moves you up the recruiter queue more than any resume optimization.
What to actually put in your resume
A practical checklist. Use this as a final review before submitting.
Contact section:
- Name (top of body, not header)
- Phone (with country code if applying internationally)
- Email (professional address)
- LinkedIn URL (custom-slug, not the auto-generated one)
- Location (city, country — full address is unnecessary and a privacy risk)
Summary or objective (2-3 lines):
- Your role and years of experience
- 2-3 most relevant skills/technologies
- One sentence on what you are looking for
Example: "Senior Software Engineer with 6 years building distributed systems at Stripe and Dropbox. Specialized in event-driven architectures, payment systems, and high-throughput data pipelines. Looking for staff-level roles in fintech or developer tools."
Work experience (most important section, listed reverse chronological):
For each role:
- Job title — if the JD's title honestly describes the work you did, use the JD's exact title. (If you were called "Senior Engineer" but did the work of a "Senior Software Engineer" listed in the JD, write "Senior Software Engineer." Do not invent titles you did not hold.)
- Company name, location, dates
- 3-5 bullet points
- Each bullet starts with an action verb
- Each bullet quantifies impact where possible
Avoid the "responsibilities" trap. "Responsible for managing a team of 5" is weak. "Led 5-person team that shipped X, reducing Y by Z%" is strong.
Skills section:
- Comma-separated, not bulleted, not tabled
- Order by relevance to the JD
- Include the verbatim keywords from the JD
- Include both spelled-out and acronym versions where appropriate
Education:
- Degree, institution, dates
- GPA only if 3.5+/4.0 or recent grad
- Relevant coursework only for entry-level resumes
Optional sections (include only if strong):
- Certifications — list the ones recruiters search for in your field
- Projects — for early-career or career-changers, this matters; for senior, less so
- Publications — for research roles
- Awards — only if substantive
A note on AI-generated resumes
You can use AI to draft a resume. We use it ourselves. Two rules:
- Use it to draft, not to write. AI can help structure your experience and suggest action verbs. The story is yours. If a recruiter asks about a specific bullet point and you cannot speak to it concretely, you should not have included it.
- Run the AI-drafted resume through an ATS test. Several tools exist — including NextHire's Resume Builder — that test how your resume parses through real ATS parsers before you submit. This catches formatting issues before recruiters see them.
The AI-drafted resume that works is one where the AI did the polishing and you did the substance. The one that fails is where the AI invented experience or wrote in a generic voice that all read alike.
How we built NextHire's Resume Builder
We built NextHire's Resume Builder to automate everything you just read. Watching strong candidates fail at the parsing step — when their experience would have gotten them the role — was the specific problem that made us want to build it. The Builder takes your background and the job description and produces a resume specifically optimized for the ATS the company uses, with ATS-pass-rate scoring on every variant before you submit.
If you want to try it: Resume Builder. Free tier covers basic resume building.
Back to the substance.
Frequently asked questions
Does ATS actually read PDF? Most modern ATS read PDF reasonably well. Greenhouse, Lever, Ashby handle it cleanly. Workday and older systems have inconsistent PDF parsing. Default to .docx unless the application form specifies PDF.
How long should my resume be? One page for under 5 years of experience. Two pages for 5-15 years. Three pages only for very senior or academic candidates. Most resumes that hit three pages have not been edited; cut.
Should I include a cover letter? If the application requires one, write a real one (4-5 paragraphs, tailored). If it is optional, often skip it, recruiters report ignoring optional cover letters in most cases. Where it does matter: career changes, employment gaps, applying to small companies where the founder reads everything.
How do I know which ATS a company uses? Look at the URL of the careers page. myworkdayjobs.com is Workday. greenhouse.io is Greenhouse. lever.co is Lever. ashbyhq.com is Ashby. icims.com is iCIMS. The URL gives it away.
Can I use the same resume for every job? No. The keyword-match scoring across ATS means you should at minimum adjust the skills section and headline for each role. The work experience can stay similar. The summary should change to match the role.
What if I have a non-traditional background? Career changers, bootcamp grads, returning-from-break candidates, your resume needs to lead with the most transferable evidence. Recent project (paid or unpaid), relevant coursework, or a specific story that justifies the change. ATS does not handle non-traditional backgrounds well. You will likely need to combine resume optimization with direct outreach to hiring managers (skip the ATS entirely where you can).
How often should I update my resume? Active job hunt: every 2 weeks. Passive (employed, casually looking): every 2 months. The "last active" signal in many ATS and job boards reduces your visibility if you go stale.
Is keyword stuffing a real risk? Yes, but not because of an algorithm. The risk is that recruiters notice. A resume listing 30 technologies for a 2-year-experience role reads as inflation, and the recruiter throws it out as soon as they open it. The right approach is to include the keywords from the JD that you genuinely have experience with, in context, where it is honest.
If this guide was useful, the companion piece — Why Most Resumes Get Rejected Before a Human Sees Them — is shorter and covers the recruiter-side perspective on what happens to your application after submit.
Want to test your resume against real ATS parsers? Try NextHire's Resume Builder — free.