Problems and solutions · Updated · By CVPosh · Markdown version
How do I write a cover letter that does not sound generic?
Write three short paragraphs: why this specific employer and role, two pieces of evidence from your own work that match what the posting asks for, and a plain closing. Name something concrete about the company, tie each claim to a real result, and cut any sentence that could appear in anyone's letter. Aim for one page.
Why cover letters sound generic
A generic letter is one you could send to any company by changing the name. It says "I am excited to apply", lists strengths with no evidence, and restates the resume. The reader has already seen the resume, so the letter adds nothing, and the writer has not shown that they know anything about the employer.
A specific letter does two things the resume cannot: it explains the choice (why this role, why this company, why now) and it picks two or three facts from your history and shows how they apply to the problems named in the posting. That is also where an AI assistant helps least if it is left to invent; it needs your facts and your reasons.
Length matters less than precision. One page, three or four short paragraphs, plain language. If the posting asks for a letter, answer exactly what it asks; if it asks for specific information, such as availability or a salary range, include it.
The structure, step by step
- Read the posting for the problem behind the job. What is the team trying to achieve? Look for verbs and goals ("scale the data pipeline", "reduce churn"), not just a skills list.
- Find one specific, true reason you want this employer. A product you use, a project they shipped, a stated value you share, a change in their market. If you cannot find one, research for ten minutes; if still none, the role may not be right.
- Pick two achievements that match their problem. Choose from your master resume. For each, write one sentence: what you did, the scale, the result. Do not repeat the resume bullet word for word; add the context the resume has no room for.
- Draft the three paragraphs. Paragraph one: the role, why this company, in two to three sentences. Paragraph two: the two achievements and how they apply. Paragraph three: availability, a clear next step and thanks.
- Remove the generic lines. Delete "I am a hard-working team player", "I am excited to apply" and any sentence that would work for any employer. Replace each with something concrete.
- Address it properly. Use the hiring manager's name if the posting gives it, and the role title as written in the posting. Check the company name for typos.
- Read it aloud and keep it to a page. If it sounds like a form letter, rewrite the opening. Save it as a PDF named with your name and the role.
| Generic | Specific |
|---|---|
| I am excited to apply for this position. | I want to work on the scheduling product because I have used it to run a three-person clinic for two years. |
| I am a strong communicator. | I wrote the weekly customer update for 40 accounts, and replies to it became our main source of product feedback. |
| I have extensive experience in data analysis. | In my last role I built 12 weekly SQL dashboards for the sales team, which is the reporting backlog your posting describes. |
| I would be a great fit for your team. | I would like to talk about how my work on release automation could shorten your deploy cycle. |
All details above are invented examples to show the difference in specificity.
When to use CVPosh for this
The CVPosh cover letter generator on the website produces a draft with OpenAI from details you enter; what you enter is sent to OpenAI. Treat the result as a first draft: edit every claim and add the company-specific reason, which it cannot know.
For role-specific starting points, the cover letter examples pages (for example for a frontend developer) are template-generated references, not real people's letters, so use them for structure and vocabulary rather than copying.
Through MCP, an assistant can read your saved CV (get_cv) and run analyze_keywords against the posting to see which requirements your letter should address. There is no cover-letter tool and the tools cannot edit documents: the assistant drafts in chat and you review.
Copy-paste prompt for an AI assistant connected to CVPosh
Connect the CVPosh MCP server first (setup on the MCP page). Every tool is read-only, so the assistant reports and you make the changes.
Assign to CVPosh: read my newest CV with get_cv and run analyze_keywords against the job posting below. Then draft a one-page cover letter in three paragraphs using only facts from my CV, and mark each sentence with the CV line it comes from. Do not add any fact that is not in my CV; show me what you did so I can approve every claim. Leave a clearly marked placeholder for why I want this company. [paste job posting]
Questions
Do I need a cover letter?
If the posting asks for one, yes. If it is optional, a specific letter can help and a generic one does not. A careful application without a letter is better than a careless one with it.
How long should it be?
One page, three or four short paragraphs. Shorter is fine if every sentence is specific.
Can I use AI to write my cover letter?
You can use it to draft from facts you supply. Check every claim, and write the company-specific reason yourself.
Should I repeat my resume in the letter?
No. Pick two achievements and add the context the resume has no room for: why they matter for this employer.
Related problems
- How do I tailor my resume to a job posting with AI without making things up?
- How do I add numbers to my resume bullets when I don't have exact metrics?
- How do I match my resume keywords to a job description?
- Is it safe to give my resume to ChatGPT or Claude, or connect it through MCP?
Tools and pages that help
- Cover letter generator (uses OpenAI; check every output)
- Cover letter templates by role
- Cover letter template: frontend developer
- Blog: how to write a cover letter
Markdown version of this page: https://cvposh.com/solutions/cover-letter-not-generic.md