How an ATS actually reads your résumé

Before a recruiter sees your résumé, software reads it first. Here's exactly what that parser does with your page — and how to make sure it reads you right.

Table of contents
Tailor my resume →
A sheet of résumé paper catching a diagonal band of blue light

"Beat the ATS" gets thrown around like the applicant tracking system is an opponent — a bot standing between you and a human reader, waiting to reject you for the wrong font. That framing is mostly wrong, and it leads people toward the wrong fixes: invisible white text stuffed with keywords, a résumé built for a robot instead of a job. Understanding what the software actually does removes the mystery, and the fix turns out to be almost boring.

What an ATS is (and isn't)

An applicant tracking system is, at its core, a database. Companies use it to store applications, let recruiters search and filter candidates, and move people through a hiring pipeline — screened, interviewed, offered, rejected. It's the same category of software as a CRM, just built around résumés and job requisitions instead of sales leads.

The part of that system people mean when they say "the ATS reads your résumé" is the parser — a component that opens your PDF or Word file and extracts plain text from it: your name, your work history, your skills, your dates. That text gets stored as searchable fields so a recruiter can later type "React" into a search box and pull up everyone whose résumé mentions it. The parser isn't judging your career. It isn't scoring your tone or your personality. It's converting a laid-out document into a row in a database, and it's a genuinely hard job to do well across the enormous variety of résumé formats people submit.

This distinction matters because it changes what you're actually optimizing for. You're not trying to charm a piece of software or guess at some hidden scoring rubric. You're trying to make sure a fairly mechanical extraction step produces an accurate copy of your history — the same job title, the same dates, the same skills a human would read off the page. Once the extraction is accurate, everything downstream — search, filtering, the recruiter's eventual read — works the way it's supposed to.

How the parser reads a page

Most parsers don't understand a page the way a person looking at it does. They don't recognize "this is a sidebar" or "this is a two-column layout" — they read the underlying text stream in whatever order the file stores it, generally top to bottom, left to right, the same way a screen reader moves through a document. Visual position on the page and logical order in the file are two different things, and a parser follows the second one, not the first.

For a plain, single-column résumé, those two orders match — what you see is what the file stores, in the order you'd expect. That's exactly why single-column layouts parse reliably: there's no gap between what a human sees and what the software extracts. The moment a layout introduces columns, tables, or floating elements, that gap opens up, and the parser has to guess at an order the file doesn't actually declare — which is where extraction quietly goes wrong without ever throwing an error.

It's also worth knowing that PDF and DOCX aren't parsed identically. A DOCX file stores more of its original structure — paragraphs, headings, run order — which some parsers lean on directly. A PDF is closer to a print-ready snapshot of positioned text, and a parser has to reconstruct reading order from where each character sits on the page. Neither format guarantees good extraction on its own; a badly laid-out DOCX can parse just as poorly as a badly laid-out PDF. The layout is what determines reliability, not the file extension.

Where résumés break the parser

The gap between visual layout and text-stream order is where formatting choices turn into real risk:

What the parser looks for

On the other side of that risk list is what actually helps: standard section headings the parser can recognize — "Experience," "Education," "Skills" — rather than a stylized label it has no reason to know. Job title, company, and dates written as plain text in a consistent order, so the fields it extracts line up correctly. And skills listed as words, not graphics — "Python, SQL, AWS" parses; a five-icon skill meter does not.

Consistency matters here as much as the individual fields. If your most recent role lists "Company — Title — Dates" and your next one lists "Title, Company (Dates)," a parser trying to extract those three fields into consistent columns has to handle two different patterns instead of one. It's a small thing, but it's exactly the kind of small thing that separates a résumé that extracts cleanly from one that extracts into slightly the wrong fields — right information, wrong place, which can be just as costly as missing information when a recruiter later searches by title or date range.

The layout that always parses

None of this requires designing around software. It's a short, boring checklist that happens to be correct for a human reader too:

  1. Single column, top to bottom — no side rail, no multi-column skills block.
  2. Standard section headings instead of stylized or creative labels.
  3. Selectable text, never an image of a résumé or a scanned PDF.
  4. A common, embeddable font.
  5. Letter or A4 page size, sensible margins.
  6. No headshot, no icons, no decorative graphics standing in for content.
The résumé that parses cleanly and the résumé a recruiter reads fastest are the same document.

How Tailr handles this for you

This is the layout Tailr renders by default, with no setting to turn it off, because there's no version of "more visually interesting" that beats it for either reader. Every tailored résumé exports as a single page, single column, standard headings, fully selectable text — available as both PDF and DOCX — with one-page auto-fit that tightens spacing rather than silently shrinking your type past legibility or letting content quietly overflow onto a second sheet. For the full formatting checklist beyond what's covered here, see formatting that parses clean.

None of this changes what's in your résumé — it changes how reliably that content survives the trip from your file to a recruiter's screen. The tailoring itself, the actual content decisions about what to include and how to phrase it, still comes down to you and the posting in front of you. Formatting just makes sure that work doesn't get lost in translation.

Export a résumé any parser can read.

Tailr renders one clean, single-column page — selectable text, standard headings, no parser traps.

Tailor my resume →