What to write in a cold email for a job
Every effective cold email does four things in order: proves it is not a mass send, states why you specifically are worth 30 seconds, makes one concrete ask, and gets out of the way. Anything that does not serve one of those four is cut.
| Section | Job | Length |
|---|---|---|
| Subject | Earn the open. Be specific, never clever. | 4–8 words |
| Opening line | Prove this was written for them. | 1 sentence |
| Proof | One claim, ideally with a number or a link. | 2–3 sentences |
| Ask | One request, smaller than 'hire me'. | 1 sentence |
| Sign-off | Name, role, one link. No paragraph of thanks. | 1 line |
The opening sentence. If it could have been sent to 200 people it will be read as if it was. Naming the team's actual problem, a recent launch, or the specific job requisition is what separates a reply from an archive.
Example 1 — No open role, you want to be first
The strongest position in a job search, and the least used. There is no applicant pool yet, so you are not being compared to 400 people.
Subject: Payments infra — 2 yrs on a similar migration Hi Priya — saw the note in your engineering blog about moving billing off the monolith this quarter. I did the same migration at Zeta last year: 40+ services, dual-write cutover, no customer-visible downtime. Wrote up the rollback approach here: [link]. Not sure if you are hiring on that team yet, but if the migration is happening I would like to be in the conversation early. Worth 15 minutes? Rahul — backend eng, 4 yrs — github.com/…
- Opening references something only a reader of their blog would know.
- Proof is the same problem, with scale and outcome attached.
- Ask is 15 minutes, not a job. Easy to say yes to.
- No CV attached. Attachments on a first cold email trip spam filters and read as bulk.
Example 2 — You already applied and heard nothing
This is the highest-volume case, and the one people get wrong by apologising. You are not chasing; you are adding information the application form could not carry.
Subject: Applied for Data Analyst (req 4471) — one thing the form missed Hi Anand — I applied through the careers page last Tuesday for the Data Analyst role. The form only took a CV, so the relevant bit got lost: the dashboard work you list under 'nice to have' is what I did full-time for two years — rebuilt reporting for a 60-person sales org, cut manual reporting from 3 days a month to zero. Happy to send the case study, or answer anything by email if that is easier than a call. Meera
- Names the requisition. Turns a stranger into a traceable candidate in their ATS.
- Gives a reason to exist — the form lost something. That is true of every application form.
- Offers the low-effort path (answer by email) alongside the high-effort one.
Example 3 — Career change
The reader's objection is formed before they finish your first sentence. Address it in that same sentence rather than hoping they read to paragraph three.
Subject: Teacher → instructional design, 2 shipped courses Hi Sam — I am moving from six years of classroom teaching into instructional design, which I know reads as a gap on paper. What is not on paper: I have built and shipped two internal onboarding courses for a 200-person company as contract work, both still in use. You do not have an opening listed. I am asking whether the switch is credible from where you sit, and what would make it more so. Ten minutes, any format.
It is a genuinely different ask from 'hire me', so it does not compete with the applicant pile — and people who answer it have invested something in you. It converts to referrals far more often than it converts to nothing.
Example 4 — Warm-adjacent, someone you have a thread to
Subject: Your PyCon talk on flaky tests Hi Dev — your PyCon talk on quarantining flaky tests is the reason we stopped auto-retrying ours; the 'retry hides the bug' framing landed with my whole team. I am looking for a platform role in Bangalore or remote. You would know better than most whether your infra team is growing — and if not, who else is doing this properly right now. No pressure either way, and thanks for the talk.
The ask here is two-branched: a role, or a name. The second branch is why this email gets answered when the pure job ask does not — you have made it possible for them to help you without hiring you.
Example 5 — The one follow-up
Subject: Re: Payments infra — 2 yrs on a similar migration Hi Priya — bumping this once in case it landed badly timed. Still interested, still happy to make it 15 minutes. If the team is not growing this quarter, just say so and I will stop. Either way, good luck with the cutover. Rahul
- Same thread, so the original is one scroll away.
- Names the possibility of a no — permission to close the loop is what makes people answer.
- One follow-up. Two is persistence; four is a reason to block you.
What gets these ignored
| Pattern | How it reads | Instead |
|---|---|---|
| "I am writing to express my interest" | Form letter, first sentence | Name the specific thing you saw |
| Full CV pasted into the body | Bulk send | One claim, one link |
| "Let me know if there are any openings" | No ask at all | Ask for 15 minutes or a name |
| Attachment on first contact | Spam-filtered | Link, or attach on reply |
| Sent to careers@ or info@ | Never read by a person | A named person's real address |
Send these without the copy-paste
Apply Ops finds the verified address for a named hiring manager or recruiter, drafts the initial email and its follow-up from your resume, and schedules both from your own Gmail. You review every draft before anything sends.
See how outreach works