Close-up of a computer screen displaying resume text being scanned

Why Your Resume Is Getting Filtered Before a Human Sees It

Most job seekers assume a recruiter reads every resume that comes in. In reality, at any company using an applicant tracking system — which is most companies above a few hundred employees — your resume usually gets parsed by software before a human ever opens it.

That software isn’t rejecting you based on judgment. It’s rejecting you based on formatting it can’t read and keywords it can’t find. Which means a strong candidate can get filtered out for reasons that have nothing to do with their actual qualifications.

Here’s what’s actually happening inside that system, and how to build a resume that survives it.

What an ATS actually does

An Applicant Tracking System (Workday, Greenhouse, Lever, iCIMS, and similar platforms) does two things before a human recruiter ever sees your resume:

  1. Parses your resume into structured fields — name, contact info, job titles, dates, skills, education — by reading the raw text.
  2. Scores or filters you against the job posting, either by keyword match, by recruiter-set filters (years of experience, required skills, location), or both.

If the parser misreads your resume, or misses a section entirely, the recruiter may see an incomplete or garbled version of your background — sometimes with your work history missing altogether. You can be the most qualified candidate in the pipeline and never get seen, simply because the software couldn’t read your file correctly.

What breaks the parser

1. Multi-column layouts

Two-column resumes look sleek, but many parsers read left to right across the whole page, not down each column separately. That means your resume can come out with lines from your skills column jammed in the middle of a job description — turning coherent experience into scrambled text.

Fix: Use a single-column layout. It’s less visually flashy, but it’s what actually gets read correctly.

2. Tables

Tables used to organize skills or experience often don’t parse at all — the ATS may skip the content inside them entirely.

Fix: Use plain text with simple formatting (bold, bullet points) instead of table structures.

3. Text in headers, footers, or text boxes

Contact information placed in a header/footer, or any content inside a text box or graphic element, is frequently invisible to parsers — even though it displays perfectly to a human eye.

Fix: Keep your name, contact info, and all resume content in the main body of the document, not in headers, footers, or embedded objects.

4. Images, icons, and graphics

A skill-level bar chart or a small icon next to “Python” might look nice, but ATS software can’t read images. Any information conveyed only through a graphic effectively doesn’t exist to the system.

Fix: Convey all information in plain text. Save the visual design for your portfolio site or LinkedIn banner, not your resume.

5. Unusual file formats or fonts

Overly stylized fonts, non-standard file types, or heavily designed templates from some resume builders can parse poorly. A .docx or a text-based .pdf (not a scanned image) are generally safest.

Fix: Save as .docx or a text-based PDF, and use a standard, widely-supported font like Calibri, Arial, or Georgia.

What the keyword matching actually looks for

Once your resume is parsed correctly, most systems compare your text against the job posting for keyword overlap — specific tools, technologies, and terms mentioned in the listing.

This is where a lot of qualified data professionals lose ground, not because they lack the skill, but because they describe it differently than the posting does. If the job posting says “data pipeline orchestration” and your resume says “workflow automation,” a keyword match system may not connect the two, even though you mean the same thing.

Fix: Mirror the language of the job posting where it’s accurate to your experience. If a posting lists “Apache Airflow” and you’ve used it, use that exact term — not just “workflow scheduling tools.” This isn’t keyword-stuffing; it’s making sure the system can recognize skill you actually have.

What this doesn’t mean

Optimizing for ATS doesn’t mean writing a resume that only makes sense to software. A resume stuffed with repeated keywords in a way that reads awkwardly to a human will hurt you once you clear the parser and a recruiter actually opens the file. The goal is a resume that’s readable and compelling to a person, built using formatting and terminology that a parser can also process correctly — not one optimized exclusively for either audience at the expense of the other.

The real takeaway

Getting filtered by an ATS rarely means you’re unqualified. Far more often, it means the system literally couldn’t read your resume correctly, or your experience was described in different language than the posting used. Both of those are fixable — and neither has anything to do with whether you can actually do the job.


Want to know what recruiters actually look at once your resume clears the ATS? See our guide on the 7-second scan rule.

Similar Posts