💚 This is free + open source. Tip $1–3 on Gumroad (PWYW) · ⭐ Star repo

How to Format a Resume for ATS: Step-by-Step Guide (2026)

Updated May 2026 · ~9 min read

An Applicant Tracking System (ATS) is the software almost every employer uses to receive, store, and search job applications — Workday, Greenhouse, Taleo, iCIMS, Lever, and dozens more. Before a recruiter ever reads your resume, the ATS imports it and tries to break your text into structured fields: name, contact, work history, education, skills. When the formatting fights that process, your resume becomes hard to read or impossible to find in a keyword search. This guide gives you the exact format that parses cleanly, in the order you should build it.

Test before you trust

Already have a resume? See how cleanly it parses and where it loses points. The check runs entirely in your browser — nothing is uploaded.

Check my resume format →

What "ATS-friendly" actually means

There is a myth that an ATS is a gatekeeper robot that auto-rejects most resumes. In reality, the system is mostly a database and search tool. "ATS-friendly" doesn't mean tricking an algorithm — it means your resume imports into clean, correctly-labelled text so that (a) the parser puts the right information in the right field and (b) a recruiter searching the database by keyword can actually find you. Every rule below serves one of those two goals.

Step 1 — Use a single-column layout

This is the single most important rule. Many ATS parsers read a page left-to-right, top-to-bottom as a single stream. A two-column design — skills in a sidebar, experience on the right — can be read in a jumbled order, mixing your sidebar into the middle of a job description. Tables and text boxes are worse: text inside them is frequently dropped entirely.

Multi-column layouts, tables, and graphics are a leading cause of parsing failures. The designer template that looks stunning in a portfolio is often the one that imports as scrambled mush.

Do this: one column, full width, normal paragraphs and standard bullet lists. If you love a sidebar look, save it for a PDF you hand someone in person — not the file you upload.

Step 2 — Use standard, recognizable section headings

The parser maps your content to fields by reading the headings. Clever labels confuse it. "Where I've Made an Impact" might be charming, but the system is looking for "Experience." Stick to the conventional set:

Keep each heading on its own line, in a slightly larger or bold style — but still plain text, not an image or icon.

Step 3 — Put contact details in the body, never the header/footer

A surprising number of resumes lose their email and phone number because the writer placed them in the document's header or footer region (the special margin area in Word). Some parsers ignore that region completely. The result: your contact info is invisible to the system, and a recruiter who wants to call you can't find the number.

Do this: type your name, email, phone, city, and LinkedIn URL as normal text lines at the very top of the document body.

Step 4 — Choose a standard font and clean sizing

Decorative or downloaded fonts can fail to embed and render as boxes or garbled characters when the file is opened on another system. Use a common, universally-installed font:

Body text 10–12pt, headings 14–16pt. Use real bold for emphasis rather than ALL CAPS for whole sentences (caps reduce readability and can trip some keyword matching). Margins between 0.5" and 1" are safe — don't shrink them below 0.5" to cram more in.

Step 5 — Format dates and bullets consistently

List each role as: Job Title — Company — Location — Month Year–Month Year, and keep that order identical for every entry. Inconsistent date formats ("2023", "Mar 2023", "03/23" mixed together) make the parser guess, and it guesses wrong. Use standard round or square bullet characters; avoid checkmarks, arrows, or emoji as bullets — they can import as stray symbols or get stripped, taking the line with them.

Step 6 — Skip the things that don't parse

AvoidUse instead
Two/three columns, sidebarsSingle column
Tables for layoutPlain headings + bullets
Text boxes, shapesNormal paragraphs
Icons replacing words ("✉" for email)The actual word + value
Logos, headshots, chartsText only
Contact info in header/footerContact info in the body
Custom/downloaded fontsCalibri, Arial, Georgia

A photo is also worth removing for most markets: it adds no searchable text and, in the US/UK, can introduce bias-screening concerns for employers.

Step 7 — Save and submit the right file type

This last step quietly kills more applications than any other. If you export your resume as an image — a scanned PDF, or a graphic-heavy design with text baked into the picture — the parser gets zero readable text and you score zero on every keyword.

The 5-second test: open your PDF, try to highlight the text with your cursor. If you can select it, the ATS can read it. If you can't, neither can the parser.

Don't rebuild the layout from scratch

The ATS Resume Kit gives you three parser-tested, single-column templates that already follow every rule on this page:

Get the ATS Resume Kit — $12 → Or test your current format free

A quick build checklist

The bottom line

ATS-friendly formatting isn't about gaming software — it's about giving the parser clean, labelled text and giving the recruiter a document they can search and read. Get the layout right once, and you can reuse it for every application. Then focus your energy where it actually moves the needle: matching your keywords to each job description.

Keep reading

Is PDF or Word better for ATS?

A .docx is the safest universal choice for application portals; every major ATS parses it reliably. A text-selectable PDF is fine for emailing a recruiter directly. Never submit a scanned or image-based PDF.

What font should I use for an ATS resume?

A common, widely-installed font — Calibri, Arial, Helvetica, Georgia, or Times New Roman — at 10–12pt body text. Decorative fonts can fail to embed and render as garbled characters.

Do columns and tables hurt ATS parsing?

Yes. Multi-column layouts and tables are a leading cause of parsing errors — text can be read in the wrong order or dropped. Use a single column with normal paragraphs and bullet lists.

⭐ Free + open source. Star the repo on GitHub if this helped, so other job seekers can find it.