SYSTEM: ONLINE

Resume Parsing Explained: How ATS Software Reads Your Resume

Resume parsing is the technology that stands between your carefully crafted resume and the recruiter who needs to see it. Every time you submit a resume through an online application portal, parsing software disassembles your document, extracts individual data points, and reassembles them into a structured database record. When parsing works correctly, your qualifications are accurately represented in the ATS. When it fails, your application is effectively sabotaged before a human ever sees it.

This guide explains exactly how resume parsing works, what causes it to fail, and how to format your resume for reliable data extraction across all major ATS platforms.

What Is Resume Parsing?

Resume parsing is the automated process of extracting structured information from an unstructured resume document. Your resume is a free-form document: it contains text arranged in whatever layout you chose, with whatever headings, fonts, and formatting you preferred. The parser’s job is to take this unstructured document and convert it into structured data that the ATS can store, search, and score.

Think of it like this: your resume is a story told in paragraphs. Parsing converts that story into a spreadsheet with specific columns for name, email, job title, company, dates, skills, and education. When the conversion is accurate, the spreadsheet represents you correctly. When it is not, the spreadsheet contains errors that misrepresent your background.

The Parsing Process: Step by Step

Step 1: File Conversion

The first step is converting your uploaded file into raw text. Different file formats require different conversion approaches.

DOCX files: The parser reads the XML structure of the .docx file and extracts the text content along with basic formatting information (bold, italic, headings). This is usually straightforward because .docx is a well-structured format.

PDF files: PDFs are more complex. A text-based PDF (created by saving from Word or a similar editor) contains selectable text that the parser can extract directly. However, a PDF created from a graphic design tool might embed text as vector paths or even rasterized images. In these cases, the parser may need to use Optical Character Recognition (OCR) to convert the image of text back into actual text, which introduces errors.

Plain text files: These are the simplest to parse since there is no formatting to interpret. However, the lack of formatting also means the parser has fewer cues to work with when identifying sections and data types.

For the most reliable parsing, .docx is the recommended format. See our detailed comparison in DOCX vs. PDF for ATS.

Step 2: Text Extraction and Ordering

Once the file is converted, the parser extracts all text content and determines the reading order. For simple, single-column documents, this is straightforward: top to bottom, left to right.

For complex layouts, reading order becomes a problem. Multi-column designs, tables, text boxes, and floating elements can all confuse the parser’s reading order algorithm. The parser might read across columns instead of down them, merge content from different text boxes in the wrong sequence, or skip content in floating elements entirely.

This is why single-column layouts are critical for ATS compatibility. They eliminate reading order ambiguity. Our templates page provides single-column layouts that guarantee correct text extraction order.

Step 3: Section Identification

With the text extracted, the parser identifies the major sections of your resume. It does this by looking for section headings that match its internal list of expected labels.

The parser looks for headings like:

  • Work Experience / Professional Experience / Employment History
  • Education / Academic Background
  • Skills / Technical Skills / Core Competencies
  • Projects
  • Certifications / Licenses
  • Summary / Profile / Objective
  • Volunteer Experience / Community Involvement
  • Awards / Honors
  • Publications

When a heading matches, the parser marks everything that follows (until the next recognized heading) as belonging to that section. This is how the parser knows that a line reading “Google, Mountain View, CA” belongs to your work experience rather than your education.

When you use non-standard headings, the parser may fail to recognize the section boundary. Content then gets attributed to the wrong section or lumped into an “Other” category that recruiters rarely review.

Step 4: Entity Extraction

Within each identified section, the parser performs entity extraction, which means identifying specific types of information.

In the Contact section, the parser looks for:

  • A proper name (usually the first and largest text element)
  • An email address (text matching the pattern [text]@[domain].[tld])
  • A phone number (text matching regional phone number patterns)
  • A URL (text matching URL patterns, especially LinkedIn)
  • A location (city, state, or zip code patterns)

In the Work Experience section, for each entry the parser identifies:

  • Job title (often bold or on its own line)
  • Company name (adjacent to the title, sometimes preceded by “at” or separated by a comma)
  • Location (city and state pattern)
  • Dates (month/year patterns indicating start and end dates)
  • Description bullets (list items or paragraphs that follow the title/company/date line)

In the Education section, the parser looks for:

  • Degree type (Bachelor’s, Master’s, PhD, B.S., M.S., etc.)
  • Field of study (Computer Science, Business Administration, etc.)
  • Institution name
  • Graduation date
  • GPA (if present)

In the Skills section, the parser extracts individual skills, typically by splitting on commas, bullet points, or line breaks.

Step 5: Data Normalization

After extraction, the parser normalizes the data into standard formats. Job titles are mapped to canonical titles in the ATS database. Skills are matched against a known skills taxonomy. Dates are converted to a standard format for duration calculations. Company names are matched against employer databases.

This normalization step is important because it enables the ATS to compare candidates consistently, even when they use different terminology for the same things.

Step 6: Storage and Indexing

Finally, the structured, normalized data is stored in the ATS database and indexed for searching. The recruiter can now search for candidates using specific criteria (skills, job titles, years of experience, location), and your data is included in those searches if it was parsed and normalized correctly.

Major Resume Parsers in the Market

Not all ATS platforms use the same parsing technology. Some build their own parsers; others use third-party parsing services.

Sovren (Now Textkernel)

One of the most widely used resume parsing engines, Sovren (recently merged with Textkernel) powers parsing for many ATS platforms. It is known for high accuracy and support for multiple languages and formats.

Daxtra

Another major parsing provider used by enterprise ATS platforms. Daxtra offers multilingual parsing and integrates with many applicant tracking systems.

HireAbility

A parsing service that focuses on high-accuracy extraction and supports a wide range of file formats.

Platform-Native Parsers

Some ATS platforms, including Workday, Greenhouse, and Lever, have developed their own parsing capabilities. These parsers are optimized for their specific platform and may handle certain formatting elements better or worse than third-party parsers.

The practical implication: since you do not know which parser will process your resume, you need to format for maximum compatibility across all of them. This means following the most conservative formatting guidelines rather than relying on one parser’s tolerance for complex layouts.

What Causes Parsing Failures

Tables

Tables are the most common cause of parsing failures. When text is organized in a table, the parser may read it in the wrong order (across rows instead of within cells, or in an arbitrary cell order). Even a simple two-column table used for layout can produce nonsensical output.

Text Boxes

Content placed in text boxes may be extracted out of sequence with the rest of the document, or it may be skipped entirely. Some parsers handle text boxes differently depending on how they are anchored (floating vs. inline).

Headers and Footers

Document headers and footers are sometimes ignored by parsers. If your name, email, or phone number is in the header, it might not be extracted. Always place contact information in the main document body.

Images and Graphics

All image-based content is invisible to text parsers. This includes photographs, logos, icons, graphical skill bars, charts, and infographics. If information exists only as an image, the parser cannot extract it.

Multi-Column Layouts

Two or three-column layouts create reading order ambiguity. The parser must decide whether to read down each column or across the page. Different parsers make different decisions, leading to inconsistent results. For more on this topic, see our guide on one-column vs. two-column resumes.

Unusual Characters and Symbols

Special characters, decorative symbols, and characters from unusual fonts can cause encoding errors. Stick with standard ASCII characters and common Unicode symbols (like the bullet point character).

Complex Formatting

Excessive use of formatting, such as multiple indentation levels, tabs mixed with spaces, hanging indents, or unusual paragraph spacing, can confuse parsers that rely on formatting cues to identify data types.

How to Format Your Resume for Reliable Parsing

Based on everything above, here are the specific formatting guidelines that ensure your resume parses correctly across all major ATS platforms.

Document Structure

  • Use a single-column layout
  • Place contact information at the top of the document body (not in the header)
  • Use standard section headings
  • Separate sections with clear heading text (use bold or slightly larger font size)
  • Use a consistent hierarchy: Section Heading followed by entry details followed by bullet points

Text Formatting

  • Use standard fonts (Calibri, Arial, Garamond, Times New Roman)
  • Use 10-12pt font size for body text
  • Use bold for emphasis on job titles and company names
  • Use standard bullet points (round or square) for list items
  • Avoid decorative characters and symbols

Layout

  • No tables for any purpose
  • No text boxes
  • No columns (use a single-column layout only)
  • No images, graphics, icons, or charts
  • No watermarks or background elements

File Format

  • Save as .docx for maximum compatibility
  • If using PDF, ensure all text is selectable (test by trying to copy and paste)
  • Do not submit scanned documents or image-based PDFs

Dates

  • Use a consistent date format throughout (e.g., “Jan 2024 - Present”)
  • Include both month and year for each date
  • Use “Present” or “Current” for ongoing positions

Content Structure

  • Lead each work experience entry with: Job Title, Company Name, Location, Dates
  • Follow with bullet points describing accomplishments
  • List skills explicitly in a dedicated Skills section
  • Group skills by category if you have many

Testing Your Resume’s Parsability

After formatting your resume, test it before submitting.

Manual test: Copy all text from your resume and paste into a plain text editor. Verify that everything appears in the correct order, no content is missing, and the text is readable.

ATS checker test: Use an ATS resume checking tool to simulate parsing and scoring. Our ATS resume checker guide reviews the best tools for this purpose. Teal offers comprehensive ATS checking that analyzes parsing accuracy, keyword coverage, and overall resume quality.

Template approach: The most reliable method is to start with a template that has been pre-tested for parsing compatibility. Our CS Resume Template and other options on our templates page are designed specifically for ATS parsing accuracy.

The Future of Resume Parsing

Resume parsing technology is evolving rapidly. Modern parsers are incorporating machine learning models that are more tolerant of varied formatting and better at understanding context. Large language models are being used to interpret resume content semantically rather than relying purely on pattern matching.

However, this does not mean you should abandon ATS-friendly formatting. The transition is gradual, and many companies still use older parsing technology. Even advanced parsers perform better with cleanly structured documents. Formatting for ATS compatibility has no downside and significant upside: your resume will be parsed accurately by both current and future systems.

The fundamental principle remains the same: make it easy for the machine to read your resume, and your qualifications will speak for themselves. Clean structure, standard formatting, explicit keywords, and a single-column layout. These simple choices ensure that the technology between you and the recruiter works in your favor rather than against you.

Stop Guessing. Start Matching.

Teal analyzes job descriptions and shows you exactly which keywords to add to your resume.

INITIATE ACCELERATOR