Recruiters filter candidates by "years of experience" all the time. The ATS calculates that number by summing the gaps between your job dates. If your dates are formatted in a way the parser doesn't understand, your "years of experience" field comes back blank — and you don't appear in those filtered searches. This is one of the most fixable, most ignored ATS issues.
The 4 date formats that work universally
These four formats parse correctly in 100% of the ATS engines we've tested:
- Full month, year — full month, year
January 2021 – PresentMarch 2018 – December 2020 - Abbreviated month, year — abbreviated month, year
Jan 2021 – PresentMar 2018 – Dec 2020 - MM/YYYY format
01/2021 – Present03/2018 – 12/2020 - Year-only (acceptable for older roles or when months are vague)
2021 – Present2018 – 2020
Pick one of these four and use it consistently across all roles in your resume. Mixing formats (one role uses "Jan 2021 – Present" and another uses "01/2021 – present") confuses some parsers.
Date formats that frequently break ATS parsing
1. Apostrophe-shortened years
Don't use: Jan'21 – Present or '21 – '24
The apostrophe-and-two-digit-year pattern was popular in 1990s and 2000s resume templates. Most ATS engines built since 2015 don't recognize this format. The "21" extracts as a standalone number, the apostrophe drops, and the parser concludes there's no valid date in this position.
2. Period-separated dates
Don't use: 1.2021 – 5.2024 or 01.2021 - 05.2024
European date formatting using periods between day/month/year is non-standard for ATS systems. The parser often interprets "1.2021" as a decimal number rather than a date. Use slash separators (01/2021) or hyphenated month-year format (Jan 2021) instead.
3. "Now" or "Currently" instead of "Present"
Don't use: Jan 2021 – Now or Jan 2021 – Currently
Use: Jan 2021 – Present
Most ATS engines have "Present" hardcoded as the keyword for "currently in this role." Other words like "Now," "Currently," "Today," or "Ongoing" sometimes work but are inconsistent. Always use "Present."
4. Reverse year order
Don't use: Present – Jan 2021
Some candidates write dates from most-recent-first to emphasize their current role. ATS parsers expect chronological order (start date first, end date second). Reverse-ordered dates often get parsed as a single string with no valid date span.
5. Spelled-out months in non-English
Be careful with: dates spelled in non-English (e.g., German "Januar," French "Janvier," Arabic January)
If you're applying to an English-language ATS, write dates in English. Even bilingual resumes should keep dates in English.
6. Date ranges without separator
Don't use: Jan 2021 to Present (the word "to" instead of a dash sometimes confuses parsers)
Use: the en-dash (–) or hyphen (-) between dates
Special cases
Multiple roles at the same company
If you've held multiple positions at the same company, format the company-level date range and individual roles like this:
CATERPILLAR INC. Dubai, UAE | March 2019 – Present Assistant Finance Controller — Middle East March 2019 – July 2025 • Bullet 1 • Bullet 2 Senior Analyst — FP&A March 2017 – March 2019 • Bullet 1 • Bullet 2
Each sub-role should have its own clean date range. Don't try to be clever with date overlaps or shared header dates — every parser handles them differently.
Gaps in employment
If you have a gap in employment, you have three options:
- Leave the gap unexplained — the dates speak for themselves and modern ATS don't penalize gaps
- Fill the gap with a relevant entry (consulting, freelance, education, sabbatical) — use real dates honestly
- Group early career roles by year only —
2014 – 2016: Various Accounting Roles
Don't fudge dates to hide gaps. Background checks and reference calls often reveal mismatches and that's an instant disqualifier.
Future-dated roles
If you have a job offer that starts in the future:
- If the role hasn't started yet, leave it off your resume — don't put dates from the future
- If you've signed but haven't started, you can include it as
Joining September 2026in a single line, but most candidates leave this off entirely
Concurrent roles
If you held two roles concurrently (e.g., consulting on the side while employed):
- List them as separate entries with their own date ranges
- Don't try to combine them into a single overlapping entry
How dates affect "years of experience"
Most ATS engines calculate experience by adding up the duration of each work entry. Some count overlapping periods only once (smart). Some count them twice (incorrect). You can't control how the ATS calculates — but you can ensure each role has a clean, parseable date range so it gets counted at all.
If your resume has 8 work entries and the parser successfully extracts dates for only 5, your "years of experience" field will be calculated from those 5 entries — making you look less experienced than you are.
Quick checklist
- ☐ Every role has a date range visible (not "see CV" or "since college")
- ☐ Date format is consistent across all roles (don't mix "Jan 2021" and "01/2021" in the same resume)
- ☐ End date for current role says "Present" (not "Now" or "Today")
- ☐ No apostrophe-shortened years ("'21")
- ☐ Year is full 4-digit (2021, not 21 or '21)
- ☐ Dash between dates is hyphen (-) or en-dash (–), not the word "to"
- ☐ Months are in English
Test it
The fastest way to see if your dates are parsing correctly is to run your resume through an ATS-style parser and look at what it extracts. ATS Verification shows you whether each work entry was parsed correctly — including the date range, job title, company, and bullets.
If a role's dates show as blank or wrong, that's a date-format issue you can fix in 30 seconds. If multiple roles are showing date issues, your overall date format probably needs to be standardized.
→ Run a free ATS scan to check that all your dates parse correctly