Skip to main content
PProfileMatch

2026-09-08

How to Write a Resume That Passes ATS Screening

Cover illustration for the article: How to Write a Resume That Passes ATS Screening

"ATS" gets talked about like a mysterious gatekeeper that rejects resumes on a whim. It isn't. An applicant tracking system is mostly a database with a parser attached — it reads your resume into fields, stores it, and lets a recruiter search and filter. Most of what people call "getting rejected by the ATS" is really the resume failing to parse cleanly, or a human recruiter filtering on keywords the resume never included. Both are fixable once you understand what's actually happening.

1. What an ATS actually does

When you submit a resume, the ATS extracts the raw text and tries to map it into structured fields: name, contact info, job titles, dates, employers, education, skills. That structured data is what shows up when a recruiter searches "5 years, React, Node" or filters a pipeline by years of experience. It doesn't score your resume against some hidden rubric on its own — most systems don't reject anyone automatically unless a company has explicitly set hard filters (like a required certification or minimum years). The real risk isn't an algorithm judging you; it's the parser mangling your information so badly that the fields recruiters search on come back empty or wrong.

2. Formatting choices that break parsing

Parsers read text roughly left-to-right, top-to-bottom, and they struggle with layouts a human eye handles fine. Avoid:

  • Multi-column layouts — the parser often reads across columns instead of down one, scrambling your job history into nonsense.
  • Tables used for layout (not just data) — text inside table cells is frequently dropped or reordered.
  • Text in headers and footers — contact details placed there are sometimes never read at all.
  • Text embedded in images or graphics — icons for a phone or email next to unparsed text, skill "meters" rendered as shapes, logos used instead of company names.
  • Unusual fonts or heavy symbol use — decorative fonts and special characters (bullets made of icons, boxes) can render as garbled characters after extraction.

The safe format is a single column, standard fonts (Calibri, Arial, Georgia), plain text bullets, and section breaks made with simple headings rather than borders or shaded boxes.

3. Use section headers the system expects

Parsers rely heavily on recognizing common section names to know what kind of content follows. "Work Experience", "Professional Experience", "Education", "Skills", and "Certifications" are reliably recognized. Creative alternatives like "Where I've Made an Impact" or "My Journey" look fine to a human but can confuse a parser into filing your job history under the wrong field, or not extracting it as experience at all. Save the personality for your cover letter or LinkedIn summary — section headers are not the place for it.

4. Match keywords from the job description, without stuffing

Recruiters and hiring managers search their ATS by keyword — a specific tool, language, certification, or methodology named in the job posting. If your resume never uses the exact term the posting uses, you won't surface in that search even if you have the underlying skill. Read the job description and mirror its specific terms: if it says "stakeholder management" and you wrote "worked with clients", a keyword search won't connect the two even though they mean something similar.

The line to avoid crossing is keyword stuffing — pasting a wall of skills at the bottom in tiny text, or repeating a term unnaturally just to boost matches. A human reads this resume eventually, and a list that reads as noise instead of evidence hurts you at that stage even if it helped you get found. The better approach is working relevant keywords into actual bullet points, where they describe something you did.

5. File format: docx vs. PDF

Modern ATS platforms generally parse both .docx and PDF reasonably well, but PDFs exported from design tools (Canva, InDesign) or PDFs that are actually scanned images cause real problems — some parsers extract nothing usable from an image based PDF. If a job posting doesn't specify a format, a .docx built in a plain word processor is the safest universal choice; a text-based PDF (exported directly from Word or Google Docs, not a design tool) is the next safest. Always open your exported file and copy-paste its text into a plain text editor before submitting — if the text comes out scrambled or missing, that's exactly what the ATS will see too.

6. Quantify achievements instead of listing duties

Once your resume parses cleanly and matches on keywords, the content itself is what convinces a human. "Responsible for managing social media accounts" describes a duty. "Grew Instagram following from 2,000 to 14,000 in eight months through a weekly content calendar" describes an outcome, with a number that makes the scale concrete. Go through every bullet and ask: can I attach a number, a before/after, or a scale to this? Not every line will have one, but most experienced candidates undersell themselves by describing tasks instead of results.

7. A quick pre-submission checklist

  • Single column, no tables, no text in headers/footers.
  • Standard section headers (Experience, Education, Skills).
  • Job-description keywords appear naturally in bullet points.
  • Contact info is plain text, not inside an image or icon.
  • File opens correctly and text copy-pastes cleanly.
  • Every bullet answers "so what happened?" with a number where possible.

If you want to check this against a specific job rather than guessing, you can upload your resume to ProfileMatch and see which required skills from a real posting are already visible on your resume and which are missing, before you hit submit.

Related reading