Is a Europass CV ATS-friendly?
Partly. In a real Europass PDF exported in May 2026, every word and the contact details came out as text, but section headings were stored after their content and the language grid lost its columns, so sections were misfiled.1
Written 13 October 2026. CitedCV. How we write our guides
Check your CV for ATS problems, no account needed
Drop a PDF, DOCX or text file, or paste the text. You get a score, the problems a parser trips on, and your CV as a parser files it.
Runs in your browser. The file and its text never leave this device.
The two files we tested
We did not make these CVs and we did not open a Europass account. Both are genuine exports from a Europass editor that their owners published, and each still carries an embedded Europass XML file, which a lookalike made in Word would not have.
| File A: current editor | File B: previous editor | |
|---|---|---|
| What it is | A researcher's own CV, published as the sample file of an open-source Europass converter on GitHub | A fictional sample ('Betty Smith') in the Europass organisation's REST API examples on GitHub |
| Exported | 22 May 2026, from europass.europa.eu | 12 December 2017, from europass.cedefop.europa.eu |
| PDF details | 6 A4 pages; producer cairo 1.15.12; attachment.xml in the Europass Candidate XML format | 2 A4 pages; producer LibreOffice 4.0 with iText 5.5.11; Europass-XML-Attachment.xml |
| Layout | One column; photo and Europass logo at the top; headings in capitals | Section names and dates in a left label column; photo; contact icons; footer on every page |
File A matters most: it is what the editor produces today. File B shows the older layout that many people still have saved, which the Europass FAQ says can be imported into the new editor.
What we ran
The code of the free checker on this page, run on 12 October 2026: pdf.js 6.3.289 reads each page, the checker turns the positioned text into lines and looks for columns, picture-only pages and filled shapes, then the deterministic audit sorts every line into a section and applies its rules. No language model is involved, and the same file always gives the same result. We did not reproduce any personal details from File A on this page.
First thing to do with your own Europass PDF
Drop the PDF you downloaded from Europass into the checker at the top of this page. It runs in your browser with no account. Then open the parser view and look for four Europass-specific symptoms before you read the score.
- Find the Work experience heading. If it sits below your first job instead of above it, the heading order problem described below applies to your file.
- Find your education entries. If they are filed under Experience, the parser did not take Education and training as a section name.
- Find each language row. If it reads like ENGLISH C1 C1 B2 B2 B2, the skill each level belongs to is gone.
- Count the pages the checker estimates. Every field you filled is printed with its label, so a full profile runs long.
How a parser reads a Europass PDF
Text: complete in both files
Neither file is a picture. pdf.js returned real text for every page, the checker found no picture-only page, and the email address and phone number came out intact, so both files scored 100 for contact details. The photo in each file did not hide any text. That matters because Workday tells employers that parsing works best with resumes that have no images or image-based styles, and Greenhouse lists photos among the causes of a failed parse.
Reading order: headings stored after their content
This is the finding that matters for today's editor. In File A, each section heading is stored later in the PDF than the start of its section. The About me text and the first job came out before the headings About me and Work experience; Education and training came after the first degree; Language skills came out inside a course description. Poppler's pdftotext in raw mode gave the same order, so this is how the file stores the text, not a quirk of one reader. A parser that reads in stored order meets the content first and its label later. Workday's documentation says parsing results can vary with the format and the order of words.
Labels and run-on lines
File A prints the job title, employer, start date, end date and city as one run of text in capitals, separated by dashes. Optional fields come out as label and value run together: 'Business or Sector', 'Department', 'Links', and an education line such as 'Level in EQF EQF level 8 Type of credits ECTS Number of credits 240'. Readable for a person, but every label is one more word a parser has to discard.
The language grid loses its columns
On the page, the levels sit in five columns under Listening, Reading, Spoken production, Spoken interaction and Writing. As text, File A gives one row such as 'ENGLISH C2 C2 C2 C2 C2', with the skill names on a different line. For a language where only two boxes were filled, the row reads 'FRENCH B2 C1' and nothing says which two skills those are. Workday also says it does not auto-fill the Languages field at all, so the grid is the part least likely to land anywhere useful.
The 2017 layout: label column and footer
File B puts section names and dates in a left column. pdf.js read each label into the line beside it, which gave 'PERSONAL INFORMATION Betty Smith' as one line, so the name was read as part of a heading. The footer '© European Union, 2002-2017 | europass.cedefop.europa.eu Page 1 / 2' and the running header on page 2 came out as body text between jobs and skills. The checker's column test, built not to count a narrow column of dates as a second column, did not report two columns.
Measured result, file by file
Everything in this table is the output of the run on 12 October 2026. The score is the audit score out of 100; layout findings do not change it.
| Check | File A (2026 export) | File B (2017 export) | Caused by |
|---|---|---|---|
| Text layer | All 6 pages, 2,709 words | Both pages, 561 words | Fine in both |
| Columns, picture pages, filled shapes | 1 column, 0, 0 | 1 column, 0, 0 | Nothing flagged; no skill bars |
| Contact details found | Email and phone: 100 | Email and phone: 100 | Fine in both |
| Headings detected / matching standard names | 35 / 1 (Work experience) | 10 / 1 (Work experience) | Europass section names; our list |
| Lines filed under Experience in the parser view | 273 of 283 | 70 of 71 | Heading order and names |
| Date styles found | 4: 10/2021, Nov. 2021, plus DOI numbers and an ISBN that our rule took for dates | 2: 08/2002 and June 2002 | Mostly typed text, partly our rule |
| Estimated length | About 5 pages | About 1 page | Content |
| Writing findings | Two lists over the limit of 6 bullets (10 and 7), mixed bullet punctuation (13 of 84 end with a period), same-length bullets under two headings | Bullets with no number, name or tool (6 lines), first person (3 lines), two bullets with the same first word | Content |
| Audit score | 31 (language 0, structure 50, contact 100, evidence 36) | 45 (language 48, structure 50, contact 100, evidence 18) | Mostly content |
The document findings, as the checker printed them
- File A: Only 1 of 35 headings match the names parsers look for. Dates are written 4 different ways. This reads as about 5 pages. Only 18% of your lines contain a number. Two lists have more than 6 bullets (10 and 7). Terminal punctuation is inconsistent (13/84 bullets end with a period). Bullets under two headings are all the same length.
- File B: Only 1 of 10 headings match the names parsers look for. Dates are written 2 different ways. Only 9% of your lines contain a number.
What the score does and does not say about Europass
The low scores come mostly from what the owners wrote: few numbers, long lists, a five-page academic record. Of the 50 structure points each file lost, 25 come from heading names the audit does not know, which is the Europass format, and 25 from mixed date styles, which is typed text and, in File A, our rule misreading DOI numbers. The audit knows Work experience but not Education and training, Language skills or Personal skills, so it filed those blocks under Experience. A commercial parser has its own list of section names, which we cannot see.
Proof: files, code and dates
| What | Where |
|---|---|
| File A | GitHub, FATelarico/EuropassXML_to_ReactiveResumeJSON, 100_src/sample.pdf, downloaded 12 October 2026 |
| File B | GitHub, europass/rest-examples-java, CV-Europass-20171212-Smith-EN.pdf, downloaded 12 October 2026 |
| Extraction | The free checker’s reader (apps/web/app/lib/extract.client.ts) with pdfjs-dist 6.3.289 |
| Audit | auditCvText in packages/engine-core/src/audit, English rules, region US |
| Cross-check of the reading order | Poppler pdftotext in raw mode |
| PDF is the only download format; old exports import | Europass FAQ, read 12 October 2026 |
| Columns, photos, tables and headers among parse failure causes; a failed parse leaves the file attached for manual entry | Greenhouse, Unsuccessful resume parse, updated 2 March 2026, read 12 October 2026 |
| Results vary with format and order of words; no images; Languages and Skills not auto-filled | Workday, Concept: Resume Parsing, read 12 October 2026 |
Europass can change its templates at any time. Run your own export through the checker before relying on these results.
Limits of this test
- Two files, one template each. The editor offers several templates and we could not try others without an account.
- The parser view is CitedCV's own sectioning, not Workday's, Greenhouse's or any employer's.
- A misfiled section is not a rejection. Greenhouse says a failed parse leaves the resume attached and a recruiter types the details in.
What to change before you upload
Keep the Europass PDF for calls that ask for Europass. For an employer portal, these changes address what we measured, in order of effect.
- Cut the CV to two pages: remove sections and optional fields you do not need, since each filled field prints with its label.
- Add your languages as one plain line as well, for example 'German: B2 (Goethe-Zertifikat B2, 2025)', in About me or a custom section named Languages.
- Type dates in your own text the way the editor writes them, as month and year with a slash.
- Drop the photo for countries where a CV carries none; the photo page of this guide lists them.
- Where the portal offers a form or a paste box, fill it in yourself rather than relying on the upload to fill the fields.
- If the job ad does not ask for Europass, send a one-column CV with standard headings in the convention of that country instead.
CitedCV's templates are single-column with standard headings, and each PDF export is read back by a text extractor and compared with the CV it should contain. It does not produce the Europass layout.
Questions people ask
Can an ATS read a Europass PDF?
Yes, the text is readable: both exports we tested gave every word and the contact details as text. The weak points are the order of section headings and the language grid.
Why does my Europass CV get a low ATS score?
Mostly because of content and length, plus heading names. In our test the Europass format cost structure points; few numbers and a five-page record cost the rest.
Is the new Europass CV better for ATS than the old one?
It removes the label column and the footer that the 2017 layout put into the text, but it stores section headings after their content, which the old layout did not.
Does the photo on a Europass CV stop it being parsed?
Not in our test: the photo did not hide any text. Greenhouse still lists photos among parse risks, and many countries expect no photo at all.
Can I download a Europass CV as a Word file for an ATS?
No. The Europass FAQ says the CV can currently be saved only as a Europass PDF, so test that PDF or prepare a separate Word CV.
How are Europass language levels read by an ATS?
As a flat row of letters such as C2 C2 C2 C2 C2, without the skill names beside them. Add one plain language line so the level survives.
How do I check my own Europass CV for ATS problems?
Upload the PDF to the free checker on this page and read the parser view: check where Work experience, education and languages were filed.
Sources
- Europass, Frequently Asked Questions (page 2): saving and updating the CVeuropass.europa.eu/en/faq?page=1
- Europass, Frequently Asked Questions (page 3): importing CVs made before July 2020europass.europa.eu/en/faq?page=2
- Greenhouse, Unsuccessful resume parsesupport.greenhouse.io/hc/en-us/articles/200989175-Unsuccessful-resume-parse
- Workday, Concept: Resume Parsingdoc.workday.com/admin-guide/en-us/human-capital-management/recruiting/candidates/set-up-prospects-and-candidates/hdc1552497830785.html
- File A: Europass export of 22 May 2026, sample of EuropassXML_to_ReactiveResumeJSON (GitHub)github.com/FATelarico/EuropassXML_to_ReactiveResumeJSON/blob/main/100_src/sample.pdf
- File B: CV-Europass-20171212-Smith-EN.pdf, Europass REST examples (GitHub)github.com/europass/rest-examples-java/blob/master/src/main/resources/assets/input/CV-Europass-20171212-Smith-EN.pdf