Skip to content
Guides

How an ATS Actually Works, and How Resumes Really Fail It

Most ATS advice is describing software that does not exist. What these systems really do is extract text into fields — and the way resumes fail is almost always structural, not linguistic.

CE
CraftMyDocs Editorial Team
Updated September 2, 2026· 13 min read
Quick Summary & Key Takeaways

Applicant tracking systems do not score you and reject you at 74. They parse, index and search. What actually breaks, and how to test your own file.

✓ Recruiter Advice✓ ATS Optimization✓ Copyable Examples

Type "how to beat the ATS" into a search box and you will be told that a robot scores your resume out of a hundred, that 75% of resumes are rejected before a human sees them, and that the fix is a precise keyword density.

Every part of that is wrong, and the last decade of resume advice has been built on top of it.

The 75% figure has no traceable source. The scoring engine mostly does not exist. And keyword density is a concept borrowed from search engine optimisation in about 2009, applied to software that does not work that way. Meanwhile the thing that genuinely does eliminate qualified candidates — extraction failure — gets almost no attention, because it is boring and structural rather than dramatic.

So let us describe the actual machine.

What the software really does

An applicant tracking system is, at its core, a recruitment database with a workflow attached. Greenhouse, Lever, Workday, Taleo, iCIMS and the rest differ enormously in interface and very little in this fundamental job.

When you submit, four things happen.

One: your file is parsed. Software converts your document into plain text, then tries to work out which piece of that text is your name, which is an employer, which is a date range, which is a job title. This is the step where things break.

Two: the parsed result is written into fields. Name here, email there, an array of positions each with a title, an employer, a start date and an end date. What the recruiter sees in their interface is this — the structured record — not your beautiful PDF.

Three: a recruiter searches. They open the pipeline for the role and filter. "Registered nurse" AND "paediatric". "AWS" AND "Terraform". They read what the filter returns.

Four, sometimes: ranking. Some systems will order results by how well they match the posting. This is a convenience for the recruiter, not a gate, and the recruiter can and does ignore it.

Notice what is not in that list. Nothing rejected you. There was no threshold. The document either became a findable record or it did not.

Where knockouts actually happen

Automatic rejection does exist — it just is not the resume doing it.

Most application forms include knockout questions. Are you authorised to work in this country. Do you hold a current licence. Do you have at least three years in the field. Will you relocate. Answer one of those the wrong way and the system can dispose of the application without a human involved.

Those are your answers in a form, not text pulled from your resume. Which means the practical advice is unglamorous: fill the form in carefully, and do not contradict your own resume while doing it.

The failure that actually costs people interviews

Here is the scenario worth understanding, because it is common and completely invisible from the candidate's side.

You build a resume in a two-column template. Skills and dates run down a narrow left column; job titles and bullets fill the right. It looks organised. You export a PDF and it looks perfect.

The parser reads the text in the order it exists in the file. Depending on how the layout was constructed, that can mean it reads the entire left column first, then the entire right — producing a text stream where five dates appear consecutively, followed by five job titles, with nothing connecting them. The parser then assigns those dates to the wrong employers, or gives up and leaves the employment fields empty.

The recruiter searches for "Operations Manager, 5+ years". Your record has no clean employment history. You do not appear. Nobody rejected you; you were never in the result set.

Extracts as fragments

"Name inside a header. Skills in a left sidebar. Dates in a table cell beside each role. Icons for phone and email."

Extracts as a clean record

"Name as the first line of body text. One column. Dates on the same line as the employer. Contact details as plain text."

Why this matters:Headers, footers, text boxes and table cells are frequently skipped or reordered during extraction. Icons carry no text at all, so a phone number beside a picture of a phone loses its label.

The concrete list of things that break extraction:

  • Multiple columns, for the reason above.
  • Text inside headers and footers. Many parsers ignore these regions entirely. If your name and phone number live there, your record may have no contact details.
  • Tables, especially nested ones. Cell boundaries become arbitrary line breaks or disappear.
  • Text rendered as an image. A scanned resume, or a PDF exported from a design tool with fonts rasterised, contains no selectable text. It parses as an empty document.
  • Icons instead of labels. A graphic of an envelope is not the word "Email".
  • Unconventional section names. "Where I've Made an Impact" is a nice heading and the parser has no idea it means Experience. Use the boring words.
  • Ambiguous dates. "'22–'24" and "Summer 2023" are harder to normalise than "03/2022 – 06/2024".

The keyword question, correctly framed

Because the recruiter is searching, the words on your resume matter — but the mechanism is matching, not scoring.

If the posting says "client onboarding" and you wrote "customer implementation", a recruiter filtering on the first phrase will not find you. Not because you were marked down. Because you and they used different nouns for the same work.

So the job is translation, not stuffing:

  1. Read the posting and pull the six to ten terms that recur — tools, certifications, methodologies, the name of the function itself.
  2. For each, check whether you have done that work.
  3. Where you have, make sure your resume uses their word for it. Where the vocabularies genuinely differ, it is fine to carry both: "client onboarding (customer implementation)".
  4. Where you have not done it, leave it out. A term you cannot defend gets you into an interview you lose in ten minutes.

Two practices to avoid entirely. White text does not work — extracted text has no colour, so hidden keywords appear in the recruiter's view exactly like the visible ones, sitting there unconnected to anything you have done. Several major systems flag it, and being caught reads as dishonesty rather than cleverness. And keyword lists at the bottom of the page are transparent to a human reader and add nothing a properly written skills section does not.

Format and file type

Text-based PDF, unless the posting asks for something else. The claim that applicant tracking systems cannot read PDFs was true of some systems fifteen years ago and is not true of any mainstream product now. What none of them can read is a PDF containing an image.

Send .docx when a recruitment agency asks — they need to edit out your contact details before forwarding you — or when a portal explicitly refuses PDFs, which is rare and always stated.

Avoid .pages, .odt and Google Docs share links. Not because they are bad formats, but because the receiving system may not open them at all.

Testing your own file, in five minutes

You do not need a scoring tool for this. You need a text editor.

  1. Open your exported PDF.
  2. Select all the text with your cursor and copy it.
  3. Paste it into a plain text editor — Notepad, TextEdit in plain mode, anything without formatting.
  4. Read what you get.

If you cannot select the text, it is an image and you have found a serious problem. If the paste produces your name, then your jobs in order, each with its dates attached and its bullets underneath, your resume parses. If it produces interleaved fragments, a wall of dates, or an empty region where your header was, you have found the exact failure the system will hit.

This test is more informative than any score, because it shows you the same thing the parser sees.

When you want the structured version of that — field-by-field extraction, missing-section detection, and how your terms line up against a specific posting — our ATS checker runs the same analysis against the job description you paste in.

What this means for template choice

The practical answer to "which templates are ATS-friendly" is less about a named list than a set of properties. Single column. Real text for everything, including your name. Standard section headings. Dates in an unambiguous numeric format. No content in headers, footers, or images.

Within those constraints there is far more design room than the advice usually implies — typography, spacing, rules, restrained colour, and section hierarchy all survive extraction perfectly well. Every template in our library is built single-column and text-extractable for this reason, which is a constraint on layout rather than on how the page looks.

Get the structure right once and you can stop thinking about the machine, which is the point. The interview is decided by what your bullets say.

Land more interviews with ATS-optimized resume tools

Scan Your Resume

Frequently Asked Questions

Do applicant tracking systems reject resumes automatically?

Almost never on a score. The common configuration is knockout questions in the application form — work authorisation, licences, minimum experience — which are answered by you, not read from your resume. The resume itself is parsed into a database and searched.

What is a good ATS score?

There is no such number inside the employer's system. The scores you see come from third-party checkers applying their own heuristics. They are useful as a formatting review and meaningless as a prediction.

Do two-column resume templates fail ATS?

Frequently, though not universally. The risk is reading order — text is extracted in the order it exists in the file, not the order your eye follows. That can detach dates from employers or merge two columns into one run-on line.

Does putting keywords in white text work?

No. Extracted text carries no colour, so the hidden words appear in the recruiter's view like any others — visibly irrelevant to your history. Several major systems flag the technique outright, and it reads as dishonesty when found.

CE

CraftMyDocs Editorial Team

Resume & Career Experts

The CraftMyDocs editorial team writes practical, tested guidance on resumes, cover letters, ATS, and job searching — drawing on recruiter feedback and the data behind thousands of resumes built on the platform.