This is about the file rather than the writing. Every decision below follows from one principle: an applicant tracking system extracts text, and anything on your resume that carries meaning some other way is at risk of being lost. Structure that a human infers from position, size or colour has to be inferred by a parser from characters, and where it cannot be, it disappears.
PDF or Word?
Send whatever the form asks for. Where it does not specify, send a PDF.
The old advice to always send .docx dates from a period when PDF text extraction was genuinely unreliable. It largely is not any more, and a PDF has a real advantage: it arrives looking the way you left it, where a Word document can reflow depending on the reader's fonts and version.
What matters far more than the container is what is inside it. A PDF exported from a two-column layout parses just as badly as a Word document with the same layout. And never send a resume as an image, a scan, or a PDF that is a picture of text: there is no text in it to extract at all, and it will produce an empty record.
One column, always
The single highest-risk formatting decision. A parser reading across the full width of the page hits the sidebar and the main column on the same horizontal line, and the extracted text alternates between them. What comes out is a shuffle of your skills and your job history, with neither readable.
Some parsers detect columns and handle them correctly. You have no way of knowing which system is behind a given form, so the sensible move is to remove the variable. Keep the two-column version for humans and send one column to the machine.
Headings a parser already knows
A parser maps your headings against a vocabulary it was built with. Use the conventional ones and the content beneath them gets filed correctly: Experience or Work Experience or Professional Experience, Education, Skills, Certifications, Projects, Summary.
"Where I've Made an Impact" maps to nothing. The roles beneath it may survive as unstructured text, which means they are searchable but not filterable, and you drop out of any filter on years of experience. A distinctive heading buys a moment of personality and costs you a database field.
Dates, in one format, everywhere
Pick Jan 2021 - Present or 01/2021 - Present and use it for every single role. Mixing formats gives the parser several patterns to reconcile and it will get at least one wrong.
The damage is worse than untidiness. A misparsed date produces an employment gap that does not exist or a total-years figure that undercounts you, and both feed the filters recruiters actually run. Put the dates on the same line as the role, not in a margin, and write "Present" rather than leaving the end open.
Contact details in the body
Put your name, email, phone and city in the first lines of the document itself, as ordinary text. Not in the document's header region, which many parsers discard outright. This is the most consequential item on the page, because everything else on this list costs you ranking and this one costs you the ability to be contacted at all.
Elements that do not survive
- Tables. Collapse into a run of words with no rows or columns left. A skills matrix becomes an unpunctuated list.
- Text boxes. Often skipped entirely, and they look like ordinary text to you.
- Images and logos. Contain no text. A company logo does not name the company.
- Icons replacing labels. An envelope glyph beside an address leaves an address with nothing saying it is an email.
- Skill rating bars. No text, and they communicate nothing to a human either.
- Charts and timelines. Positional meaning, no extractable content.
- Headers and footers. Frequently discarded, including page numbers and anything else you put there.
Type, bullets and spacing
Any common typeface is fine, at 10 to 12 points for body text. There is no parser advantage to one font over another; the constraint is human readability, and an eight-point condensed face to force one page fails that badly.
Use a standard bullet character. Ordinary round bullets and hyphens extract predictably; decorative dingbats and symbols from unusual font ranges sometimes come out as replacement characters or vanish. This is a small risk and a free one to avoid.
Keep real spacing rather than blank lines and tabs. A parser sees a tab-aligned layout as text separated by whitespace, and the alignment you carefully built means nothing to it.
Links, written out
A hyperlink whose destination lives only in the file's metadata reaches the reviewer as the word "GitHub" and nothing else. Write the address as visible text: github.com/yourname. Slightly less elegant, and the difference between a portfolio someone can open and one they cannot.
Length and file name
Parsers do not care about page count, so length is purely a human question: one page under about ten years of experience, two beyond that, more only for academic and medical CVs. What does matter is that nothing important is stranded on a second page that a skimming reader never reaches.
Name the file like a professional document: Firstname-Lastname-Resume.pdf. It is often visible to the recruiter, and resume-final-v4-USE-THIS.pdf is a first impression you did not intend to make. If you tailor per company, check the name before every send, because a file named for their competitor ends the application on contact.
Section order, and what it costs you
Parsers do not require a particular order, but readers do, and the order is a real decision rather than a default. Contact block, then a short summary if you have something specific to say, then experience, then education, then skills and certifications. That is the shape most readers expect and it is the safe choice.
The two justified departures: a graduate or career-starter puts education above experience, because the degree is the strongest evidence available and burying it under three months of part-time work wastes it. And in fields where a credential is the licence to practise, certifications move up near the top, because their absence is the first thing that disqualifies you.
Two files, not one compromise
Nearly every argument about resume formatting is really an argument about a trade-off that does not need to be made. People want a document that parses cleanly and also looks like it was made by someone with judgement, and they try to find a single layout that does both, which usually means conceding on each.
Keep two exports of the same content instead. The plain single-column file goes to every upload form and every applicant tracking system. The designed version, with its sidebar and its accent colour, goes to a recruiter who emails you directly, to a referral, and into the interview loop where a person is definitely the reader. Once the content is written, maintaining both is close to free, and the compromise disappears.
The two-minute check
Open the PDF, select all, copy, paste into a plain text editor. That is roughly what the parser sees, and it is a better test than most tools because it has nothing to sell you.
- Reading order is correct, with no interleaving between columns.
- Name, email and phone are all present.
- Every role has a title, a company and a date, in one consistent format.
- Section headings are still recognisable as headings.
- Links appear as addresses, and no character has become a question mark.
If that text reads as a coherent document, the record built from it will be coherent too. If it does not, fix the format before touching anything else, because keyword work on a file that extracts badly is effort spent on text landing in the wrong fields.
See it done
Nine example resumes in plain single-column format, each the same content a designed version would carry with the presentation layer removed.
See ATS resume examples