How to Avoid ATS Rejection: Writing a CV That Passes Resume Parsing
Most ATS rejection guides on the internet are written by people who have never configured an ATS or reviewed what the parsing output actually looks like. This guide is written from the employer side — from experience setting up ATS screening criteria and watching where candidate CVs fail.
What ATS resume parsing actually does
When your CV enters an ATS, the parsing engine attempts to extract structured data from unstructured text. The output is a candidate record with fields like:
- Name, email, phone
- Current job title
- Previous employers and job titles
- Education (institution, degree, year)
- Skills (extracted from keywords in the CV text)
- Years of experience (calculated from employment dates)
The parser is trying to turn your CV into a structured database record. Anything that makes that extraction harder (complex formatting, tables, columns, graphics, headers in text boxes) creates parsing errors — which appear to the recruiter as missing information, not as a format problem.
The most common parsing failures
1. Tables and multi-column layouts
Resume templates with two-column layouts (skills on the left, experience on the right) are the most common parsing failure. ATS parsers typically read left-to-right, top-to-bottom. A two-column layout gets read as: left column text + right column text run together, in the wrong order.
What the recruiter sees: “Senior Product Manager — Led the PRODUCT MANAGEMENT | AGILE | STAKEHOLDER MANAGEMENT | team” — because the parser merged your job title column with your skills column.
Fix: Single column. Always.
2. Skills in the header or sidebar
Many CV templates put a skills section in a graphical sidebar. Parsers frequently miss sidebars entirely.
What the recruiter sees: A candidate with no listed skills.
Fix: Put skills in the main body of the CV, in plain text, with the word “Skills” as a section header.
3. Date formats the parser can’t read
UK date format: “Jan 2022 – Mar 2024” works in most parsers. Problematic: “Q1 2022 – Q1 2024”, “Spring 2022 – Spring 2024”, “2022/01 – 2024/03”.
Fix: Use Month YYYY format consistently. “January 2022 – March 2024” or “Jan 2022 – Mar 2024” both parse reliably.
4. Headers inside text boxes
Some CV templates put job titles or company names inside text boxes for design reasons. Text boxes are frequently ignored by ATS parsers.
Fix: Never use text boxes. Use plain text with formatting applied via the word processor.
5. Images of text
Scanned CVs, or CVs with contact information inserted as an image (a common design trick to prevent email harvesting), fail ATS parsing completely for the affected sections.
Fix: All text in your CV must be selectable text, not an image.
Keyword matching — the part that matters most
Beyond parsing, ATS tools screen for keyword matches against the job specification. This is where most candidates who pass parsing still get filtered out.
How keyword matching works in major ATS tools
Greenhouse: Greenhouse does not run automatic keyword rejection. It parses CVs into candidate records and presents them to recruiters. Keyword filtering is optional and configured per role by the recruiter. If a role has keyword requirements set, missing keywords won’t reject your application automatically — but they will rank your profile lower.
Workable: Workable’s AI Sourcing and candidate scoring uses keyword matching. Candidates can be ranked by match score based on skills extracted from their CV vs skills listed in the job spec. A low match score doesn’t auto-reject but deprioritises your application in the recruiter’s queue.
Lever: Similar to Greenhouse — manual keyword filtering, not automatic. Lever’s strength is in the CRM layer (tracking candidate history) rather than keyword screening.
SmartRecruiters: Has more aggressive AI screening capabilities, including configurable automatic filters. Enterprise tier deployments often have automatic rejection rules based on minimum criteria.
Breezy HR and JazzHR: Basic keyword search. Recruiters typically search manually rather than using automated scoring.
Which keywords to include
The right keywords are in the job description. Read the job description and extract:
- Hard skills: Programming languages, certifications, tools, platforms named in the spec
- Job titles: If the job description says “Product Manager” not “Product Owner,” use “Product Manager” in your CV
- Industry-specific terminology: If the spec uses “P&L responsibility,” include that phrase, not just “managed a budget”
Do not keyword-stuff. “Python Python Python Python” in a skills section is visible to recruiters and will get you rejected by a human even if it passes the parser.
Format checklist
Before submitting your CV to any ATS:
- Single column layout
- Plain text — no text boxes, tables (single-column tables are acceptable), sidebars
- All images are decorative only — no text in images
- Date formats: Month YYYY for all employment dates
- Section headers use the expected words: “Work Experience” or “Experience” (not “Where I’ve Been”), “Education” (not “Learning Journey”), “Skills”
- Submit as PDF — nearly all ATS tools parse PDF better than Word in 2026. Check the job posting; if it requests Word, submit Word.
- File size under 5MB — parsers sometimes fail on large files
What recruiters see vs what you submitted
If you want to know how your CV parses, some ATS tools expose a candidate-facing version of their parsed record. Workable shows candidates their parsed profile after application. You can also use free tools like Resume Worded or Jobscan to see how a parser interprets your CV before submitting.
Further reading
- What is an ATS and how does it work — how resume parsing works from the inside
- Greenhouse ATS review — how Greenhouse specifically handles candidate screening
- Workable review — Workable’s AI scoring explained