ATS Optimization
October 25, 2026
10 min read

Resume Formatting Mistakes That Break ATS Parsing (And How to Fix Them)

Fix the 7 resume formatting mistakes—tables, multi-column PDFs, headers, and icons—that scramble ATS text extraction, with before-and-after examples.

#ats formatting #resume parsing #ats resume #resume format #pdf resume
Share:
Split comparison of a two-column resume that an ATS reads out of order and a single-column resume whose text extracts in reading order.
A two-column layout scrambles the text an ATS extracts.

Most resumes that fail Applicant Tracking System (ATS) screening do not get rejected because the candidate lacks experience—they fail because the layout scrambles the extracted text stream before a recruiter or keyword scorer ever reads it. When a parser encounters floating text boxes, two-column tables, header-embedded contact details, or custom icon fonts, it merges unrelated lines together, drops dates, or leaves key fields blank. Below is an engineering breakdown of how PDF and DOCX text extraction works under the hood, the seven formatting mistakes that break it, and how to fix each one in minutes.

How ATS Document Parsers Actually Read Your File

When I built the document ingestion pipeline for Smart Resume Analyzer, I tested hundreds of real-world resumes across PDF and DOCX extractors. Candidates often assume an ATS looks at a resume the way a human views a webpage. In reality, older and mid-tier parsers convert your file into a flat sequence of UTF-8 text tokens first, then run regular expressions and named-entity recognition (NER) models to slice that stream into sections (Experience, Education, Skills) and structured records (Company, Role, Start Date, End Date).

As I covered in my earlier deep dive on how ATS resume parsers work and how to pass them, PDF files are the biggest culprit because PDF is a page-layout coordinate format, not a semantic document format. A PDF does not store "paragraphs" or "columns" natively; it stores instructions like draw these glyphs at (x=72, y=640) and draw those glyphs at (x=310, y=640). If your PDF generator outputs both columns row by row across the page width instead of finishing the left column before starting the right column, the parser reads right across the gutter and splices your job bullets into your sidebar skills list.

Comparison Table: ATS-Safe vs. Parser-Breaking Formatting Elements

Bookmark this reference table whenever you build or clean up a resume template:

Resume Element What Breaks ATS Extraction What Happens in the Parser Output ATS-Safe Replacement
Page Layout Two-column sidebars, floating text boxes, Canva frames Left and right columns merge horizontally into garbled sentences Single-column top-to-bottom layout with standard margins (0.5"–1.0")
Contact Block Phone, email, and LinkedIn placed inside the Word/Docs document header Many DOCX extractors read only the <w:body> stream and skip <w:hdr> completely Put your name and contact line in the main body at the top of page 1
Alignment of Dates Nested tables or manual spacebars pushing dates to the right Table cells extract out of order or glue the date directly to the company name Standard left-aligned text or a single right-aligned tab stop on the same line
Section Headings Creative labels like "Where I've Been", "My Superpowers", or SVG banners Section boundary detector fails; bullets get dumped into Unclassified text Standard headings: Work Experience, Skills, Education, Certifications
Employment Dates Season names ("Summer 2024"), year-only ranges, or "2023–25" Date regex fails to compute tenure, showing 0 months of experience for that role Explicit month and four-digit year (Mar 2023 - Present or 03/2023 - Present)
Skill Meters Graphic progress bars (85% Python), star ratings, or colored dots Graphics are stripped; the parser sees only the label or nothing at all Plain comma-separated text grouped by category (Backend: Python, PHP, PostgreSQL)
Bullet Characters Custom FontAwesome icons, wingdings, or emoji bullets Unmapped Private Use Area (PUA) Unicode characters turn into □ or ? Standard solid round bullets (•) or plain hyphens (-)

A two-column resume whose skills and education are spliced into job bullets, beside the same content in a single column that extracts in order

The 7 Formatting Mistakes That Scramble Raw Text (Before and After)

1. Multi-Column Tables and Sidebar Templates

Graphic-design tools and two-column Word templates frequently place Skills and Education in a narrow left column and Work Experience in a wide right column. When a line-by-line PDF extractor reads across the horizontal Y-axis, here is what happens:

What the parser extracts from a broken two-column PDF:

Senior Backend Engineer          Skills: Docker, Kubernetes
Loop Origin | Jan 2023 - Present PostgreSQL, Redis, Laravel
- Cut checkout API p95 latency   Education: BS Computer Science
from 620ms to 140ms using Redis  FAST-NUCES | 2016 - 2020

Notice how "Skills: Docker, Kubernetes" is spliced into the job title line, and "Education: BS Computer Science" lands right in the middle of a latency bullet point. When the ATS scores that role or extracts your degree, both records break.

Fixed single-column text stream:

Senior Backend Engineer — Loop Origin
Jan 2023 - Present | Karachi, Pakistan
- Cut checkout API p95 latency from 620ms to 140ms by moving session locks and hot product lookups to Redis.
- Designed idempotent webhook consumers in Laravel handling 45,000+ daily courier and payment events.

Skills
Backend & Databases: PHP, Laravel, Python, PostgreSQL, MySQL, Redis
Cloud & DevOps: Docker, Linux, Nginx, GitHub Actions, AWS

2. Contact Information Hidden in Document Headers or Footers

In Microsoft Word and Google Docs, double-clicking the top margin opens the running document header. Putting your email address and phone number there saves vertical space, but in .docx (Office Open XML), header content lives inside word/header1.xml while the main resume lives inside word/document.xml. Lightweight parsers that only parse word/document.xml extract your entire work history with email: null and phone: null. Always keep your name, phone, email, city, and portfolio links inside the main document body.

3. Tables Used to Align Job Titles and Dates

Many candidates insert a 2-column borderless table for every job entry so the company name sits on the left and the dates sit on the right. Depending on how the table rows are serialized, some parsers read all left-column cells first and all right-column cells second—separating every job title from its employment dates.

Instead of a table, write the job header on one or two plain lines using a pipe separator (|) or a single right-aligned tab stop:

Principal Software Engineer | Loop Origin | Mar 2022 - Present

Every parser on the market—whether it is Greenhouse, Lever, Workday, or iCIMS—handles that single line cleanly. If you want to see how different platforms treat your file depending on the employer's application URL, check my guide on how to tell which ATS a job is using from the job link.

4. Text Embedded Inside Images, Icons, or Vector Shapes

If your section headings are PNG banners or Canva shapes converted to curves, there is no character data in the file unless the ATS runs Optical Character Recognition (OCR). Worse, many candidates replace the words "Email:", "Phone:", and "Location:" with envelope, phone, and map-pin icons from an icon font. In the extracted text stream, those icons turn into replacement characters (``) and sometimes swallow the first character of your email address or phone number. Write out plain text labels or let the email address and phone number stand on their own.

5. Non-Standard Date Formats That Zero Out Your Years of Experience

Recruiters often filter applicants by minimum years of experience (>= 4 years). The ATS calculates that number by subtracting each role's start date from its end date. Parsers reliably recognize:

  • Jan 2022 - Mar 2025 or January 2022 - Present
  • 01/2022 - 03/2025 or 01/2022 - Present

They frequently fail on:

  • Seasons (Spring 2023 - Fall 2024)
  • Abbreviated two-digit end years (2021 - 24)
  • Missing months (2022 - 2024—some systems default to Jan 2022 - Jan 2024 or skip the calculation entirely)

6. Ligatures and Custom Font Encodings in Exported PDFs

When exporting a PDF from LaTeX, Figma, or Adobe InDesign using certain serif or display fonts, letter pairs like fi, fl, and ff are often merged into a single typographical ligature glyph (fi, fl). If the PDF's /ToUnicode CMap table is incomplete, copying and pasting words like "workflow", "profile", or "traffic" produces "workow", "prole", or "trac". That breaks exact keyword matching for technical terms and role titles. Stick to standard system fonts (Calibri, Arial, Inter, Roboto, Georgia, or Times New Roman) that map every character cleanly to standard Unicode.

7. Missing Section Boundaries Before Your Keyword List

Even after you fix your layout, your keywords need to sit inside clearly labeled sections so the parser weights them properly. Once your formatting is clean, follow the workflow in my guide on how to tailor your resume keywords to a job description without keyword stuffing so every required skill appears both in your Skills section and inside a quantified work-experience bullet.

The 60-Second Plain-Text & ATS Parser Audit Checklist

Before you upload your resume to any job portal, run this five-step pre-flight check:

  • Run the Copy-Paste Notepad Test: Open your PDF, press Ctrl+A (or Cmd+A), copy, and paste into a plain-text editor (Notepad, VS Code, or vim). Verify that every section reads in strict top-to-bottom order with no merged columns or missing lines.
  • Check Contact Fields in the Main Body: Confirm your email, phone number, and LinkedIn URL appear at the very top of the pasted plain text.
  • Verify Standard Section Headings: Ensure your core sections use standard titles (Summary, Work Experience, Skills, Education, Projects, Certifications).
  • Standardize Every Date Range: Check that every role uses MMM YYYY - MMM YYYY or MMM YYYY - Present right next to the role and company name.
  • Test Against an Automated Parser: Run your PDF or DOCX through the free ATS Resume Checker to inspect the exact parsed fields, section detection, and keyword match score against your target job description before submitting.

Frequently Asked Questions (FAQ)

Is PDF or DOCX better for ATS parsing in 2026?

A text-based, single-column PDF and a clean .docx file both parse accurately on modern enterprise platforms (Greenhouse, Lever, Workday, Ashby, and iCIMS). However, if a job portal uses an older parser or explicitly requests Word format, .docx is slightly safer because its XML structure preserves paragraph order natively without relying on X/Y page coordinates.

Do horizontal divider lines break ATS resume parsers?

Standard paragraph bottom borders in Word or Google Docs do not break parsing. What breaks parsing is drawing free-floating graphic shapes or inserting full-page table grids that wrap your text inside nested cells.

Can an ATS read hyperlinks on my portfolio or GitHub URL?

Most modern parsers extract both the visible anchor text and the underlying hyperlink URL, but older text extractors keep only the visible text. Instead of hiding your link behind generic text like "Portfolio" or "GitHub", write out the clean URL visibly (github.com/username or linkedin.com/in/username) and hyperlink it.

Why does Workday autofill my job titles into the wrong boxes?

Workday's resume autofill looks for a consistent pattern at the start of each job block: Job Title, Company Name, and Start Date – End Date. If you put a multi-sentence company description between the company name and your employment dates, or if you nest multiple promoted roles under one company using custom indentation, Workday often misaligns the fields. Listing each promoted role with its own explicit date range fixes the autofill mapping.

How can I check if my current resume template is ATS-safe without applying to a real job?

You can upload your resume and paste a target job description into Smart Resume Analyzer to see whether your sections, contact details, dates, and technical keywords extract cleanly before you send a single application.

Sources and further reading

These pages are independent references for the advice in "Resume Formatting Mistakes That Break ATS Parsing". Read them alongside this guide and follow your target employer's own instructions where they differ.

Use These Tools Next

Use a working tool to apply this guidance to your own resume or job description.

Related Resume Pages

Explore related keyword and resume guidance pages to keep improving your application materials.

Using this guidance

Use these guides to check a specific part of your application. Automated feedback is guidance, not a hiring prediction. Check suggested edits against your own experience.

Related Articles

Continue with another guide on this topic.

Ready to Optimize Your Resume?

Use our AI-powered resume analyzer to get personalized feedback, ATS optimization, and keyword suggestions tailored to your industry.

Analyze My Resume Free