The guide
A cover letter answers one job posting, so check it line by line against what that posting asks
What a cover letter is for, how to read a posting for what it really asks, why evidence beats echoed words, and the small copy-and-paste slips that undo an otherwise good letter.
- 200 to 400 words a good cover letter's length, in 3 or 4 short paragraphs
- 25 to 32 mm typical side, top and bottom margins of a business letter
- 49 lines one US Letter page at 11 pt with 25 mm margins and 1.2 line spacing
- 2 edits how far Sample Wroks Ltd is from Sample Works Ltd
- 1965 the year Levenshtein introduced his edit distance
Read the full guide Fold the guide
A cover letter is a letter of introduction that travels with a resume. Its job is narrower than it looks. It tells one reader why one applicant fits one opening, and it does so briefly. Everything useful about writing one follows from taking that narrowness seriously.
What the letter is for
The resume is a record. It sets out experience, education and skills, the professional journey in order. The cover letter is the part that speaks to one opening. It introduces the applicant, explains why this position and this employer, and connects the record to the opening in plain sentences. Employers know this, which is why a letter that could have been sent anywhere tells them something too: that the applicant did not look closely. A thoughtful, individual letter is one of the ways employers screen for genuine interest, and a generic one quietly fails that screen before anyone weighs the experience behind it.
CareerOneStop, the career site sponsored by the U.S. Department of Labor, is blunt about size. A good letter runs about 200 to 400 words in three or four short paragraphs. The structure it recommends is the old one. A heading carries the date and your contact details, and the greeting goes to a named person where you can find one. A short introduction says which job and how you heard of it. Two or three paragraphs of highlights follow, and a closing thanks the reader and says what happens next.
That is not much room. Four paragraphs leave no space for a career summary, and they should not try. They have room for a few claims, each tied to something the employer asked for.
Which claims, then? The posting decides that, line by line, and it is worth reading slowly before a single sentence of the letter is written.
Reading the posting for what it asks
So the work starts with the posting, not the letter. Read it as a set of parts: a title, a paragraph about the company, a list of duties, a list of requirements, perhaps a list of preferred extras, then benefits and instructions for applying. Only some of those lines are asks. The paragraph about the company is context. The benefits list is an offer. The lines that matter for the letter are the duties and requirements, and the checker assumes they are set apart as bullets, as numbered items, or as short lines under a heading such as Requirements, Qualifications or What you will do.
The checker on this page reads a posting the same way, by rules you can see. A bulleted line counts. A numbered line counts. Any other line counts only when it sits under a heading whose words appear on an editable list. Lines under headings such as Benefits or How to apply are left out, and so are very long paragraphs and lines with fewer than two meaningful words. The rules are deliberately plain, because a reader should be able to predict them and fix them when a posting is laid out oddly.
Once the lines are found, the comparison is literal. Each line and the letter are split into words with the browser’s own word segmenter, compared in lower case, and filtered through a stop list of small function words such as the, and and with. Stop lists are a convention of text processing rather than a standard; there is no single list that every tool uses, and the one here was written for this job and can be edited. The only allowance for variation is a plural rule: report matches reports, and policy matches policies. There are no synonyms and no guessing.
What comes out is not a score. For each requirement line, the page quotes the exact words of that line that also appear in your letter, with the paragraph and character position where each one sits, and shared runs of two or more words in the same order, which text processing calls n-grams. Then you tick the requirements your letter really answers. The tick is yours because only you can judge whether a sentence is evidence or an echo.
Evidence, not echoes
That distinction is the heart of a good letter. Take a requirement such as “Build weekly sales reports in SQL and spreadsheets”. A weak letter repeats it: I am skilled in SQL and spreadsheets and can build weekly sales reports. Every word matches, and the reader learns nothing. A strong letter answers it: in my final year I built a weekly sales report in SQL that tracked forty shops. Fewer words match, but now there is a fact with a size, a tool and a time, and the reader can picture the work.
The sample on this page is built to show both sides. Its posting has nine requirement lines found by the rules, seven bulleted and two numbered. For the first line, the letter shares four of its six content words, and the quoted phrase is “weekly sales report in SQL”, which matches the posting’s plural “reports” through the plural rule. For “Interest in retail or logistics” no word matches at all, although the letter mentions forty shops and store managers. A word count would call that a gap. A reader would call it an answer that uses different words. That is exactly why the tool quotes and you decide.
CareerOneStop suggests an even more direct form for some applications: a two-column letter that sets each requirement from the posting beside the qualification that meets it. The requirement table here is a private version of that idea. It is not something to send, but it makes plain which asks you have answered with a fact, which you have only echoed, and which you have skipped.
The slips that cost interviews
Reusing a letter is sensible, and it is also where the most damaging mistakes come from. A letter must be free of errors, and it must be specific to the job and the company. Reuse threatens both at once, because the errors it causes are the kind that tell the reader the letter was written for somebody else.
The first slip is the leftover blank. Templates are full of brackets, braces and underscores waiting for a name, and one survivor such as [Team Name] is enough. The checker looks for text in square brackets, text in one or two pairs of curly braces, three or more underscores, and XXX standing as a word. On twenty clean test letters it raised nothing, and in planted tests it caught every kind.
The second slip is the wrong name. The checker takes the company and job title from the posting only when you select them there, so nothing is guessed. It then compares them with every capitalised run of words in the letter by Levenshtein distance, the least number of single-letter insertions, deletions or substitutions that turn one string into another, a measure Vladimir Levenshtein introduced in 1965.
A short name must match exactly; longer names are allowed one to three edits before a near match stops counting as a misspelling. In the sample, Sample Wroks Ltd is 2 edits from Sample Works Ltd, within the limit for a fourteen-letter name, so it is flagged. A company name that differs entirely, or the name of another employer from your own private list of applications, is flagged as well. That list never leaves your device.
One page, plain block format
The last check is length, and here the old conventions are still the practical ones. The block format sets everything flush left with no paragraph indents and a blank line between blocks. Margins of 25 to 32 mm on each side are typical. Nothing about this layout is fashionable, and that is its strength. Its plain shape carries over even when the body of an email becomes the letter, which CareerOneStop suggests when an employer asks for an emailed resume.
Page fit is counted, not estimated. A US Letter page is 8.5 by 11 inches, or 612 by 792 points; an A4 page is 210 by 297 mm. With 25 mm margins and 11-point type at a line height of 13.2 points, the space between the margins holds 49 lines. Each paragraph is wrapped with the exact character widths of the font the PDF uses, and blank lines between blocks take their place like text. The sample letter needs 33 lines, 23 of text and 10 blank, so it fits with 16 to spare.
That count is only worth showing if it is right. It was checked against the PDF itself: in every test file the number of lines written on page one equals the count shown on the page.
There are limits, and they are worth stating. The tool reads text files, web pages and word-processor files in the Office Open XML format, but not PDF postings, because a PDF stores placed letters rather than lines and paragraphs; paste the text instead. From a word-processor file it reads only the main body, and it lists what it skipped, such as tables, text boxes and comments. It cannot tell whether a sentence is true, persuasive or well judged. It does not predict how screening software or a hiring manager will rank a letter. It counts, it quotes, and it catches slips. The judgment stays with the person whose name is at the bottom.
Sources
Every source consulted for this guide. Links checked October 24, 2026.
- How do I write a cover letter? CareerOneStop, sponsored by the U.S. Department of Labor
- Cover letter Wikipedia
- Business letter Wikipedia
- Letter (paper size) Wikipedia
- International standard paper sizes Wikipedia
- Stop word Wikipedia
- n-gram Wikipedia
- Levenshtein distance Wikipedia
- Office Open XML Wikipedia
- ECMA-376 Ecma International
- DecompressionStream - Web APIs MDN Web Docs
- DecompressionStream: DecompressionStream() constructor - Web APIs MDN Web Docs
- DOMParser - Web APIs MDN Web Docs
- Intl.Segmenter - JavaScript MDN Web Docs
- CSV Injection OWASP Foundation