Nobody plans to ghost 380 people. It happens by default: you fill the role, the adrenaline drains, and the pile of not-quite candidates sits there representing an afternoon of awkward emails you will do "this week" forever.
The result is an industry-wide habit. Greenhouse's 2024 State of Job Hunting report found 61 percent of job seekers have been ghosted after a job interview, and that is the severe end of the offense; silence after an application is so universal that candidates barely count it. Every one of those silences is a person who invested hope in your company and learned that you do not answer. They tell people. They post reviews. They do not apply to your next role, and for a small company hiring in the same talent pool year after year, that quietly gets expensive.
The fix is not caring more. Founders already feel bad about this. The fix is making rejection cheap enough that it actually happens.
Why rejection does not happen
Three honest reasons, none of them "founders are callous":
- Volume. Rejecting 380 people individually is hours of work with zero upside for the role you just filled. Any process that depends on heroic effort after the win is a process that will not run.
- The tone problem. A rejection to someone you interviewed twice cannot read like the auto-reply to someone you screened out in eight seconds. Writing each from scratch is what makes the pile feel impossible.
- The bookkeeping problem. Who did we already tell? Was that withdrawal or rejection? Fear of double-rejecting someone, or rejecting the person you meant to advance, makes doing nothing feel safer.
All three are workflow problems, and workflow problems have tooling answers.
Stage-appropriate templates, written once
The tone problem dissolves when you stop treating rejection as one email. In Reordinal, rejection is a template category, and you write one template per depth of relationship:
- Screened, not interviewed: short, warm, honest. Thank them, tell them the decision, wish them well. Two sentences beat silence by a mile and nobody at this stage expects feedback.
- Interviewed: reference the process ("thank you for the time you spent with us on the take-home and the call"). One line of substance if you have it.
- Finalists: this one you personalize per person, and because there are only two or three, you can. Your triage comments are the raw material: the verdict you recorded while reviewing is exactly the context a respectful final rejection needs.
Tokens like {{candidate_first_name}} and {{job_title}} handle the
personalization floor, the same way they do for
interview invites. If you
want to soften the door-close, a custom variable can carry a link to your
careers page or talent-pool opt-in.
Send by stage, in minutes
The volume problem is a bulk-send problem. Select the stage, pick the matching rejection template, and review: every candidate gets their own rendered preview, you can exclude anyone ("wait, we said we would refer her to a friend's startup"), and per-recipient results tell you exactly who was notified and whose address bounced.
The bookkeeping problem is handled by the machine, which is the only place it is ever handled reliably. Reordinal tracks which stages each candidate has been emailed in, so re-running a rejection pass skips everyone already told. Nobody gets the same bad news twice, and "did we reply to everyone?" is a glance at the list instead of an archaeology project.
Close-out for a 400-applicant role becomes: three templates you wrote once, two bulk sends and a handful of personal notes, ten minutes on the Friday you make the offer. That is cheap enough to actually happen, which is the entire point.
The line worth holding
One boundary keeps this humane: automate the sending, never the deciding. A rejection email should go out because a person moved a candidate to a rejected stage, not because a score crossed a threshold. We have written about why automated rejection is where AI hiring goes wrong; the same logic applies to email automation. The tooling here compresses the notification, not the judgment.
Done this way, rejection quietly becomes a recruiting asset. The candidate who got a prompt, decent no is the one who applies again next year, and next year you will be glad, because your best future candidates are often the ones you already met.
Frequently asked questions
How do you reject a large number of job candidates at once?
Group them by how far they got. In Reordinal, you write one rejection template per stage, select a pipeline stage, and bulk send with a rendered preview for each candidate. Per-recipient results and stage-send tracking ensure everyone is told exactly once.
What should a rejection email say to someone who was not interviewed?
Keep it short and kind: thank them for applying, state clearly that you are moving forward with other candidates, and wish them well. At the application stage candidates want closure, not feedback, and two warm sentences beat silence.
Why do employers ghost candidates?
Mostly capacity, not malice. Rejecting hundreds of people manually is hours of work that lands right after a role is filled, so it gets deferred forever. Greenhouse reported 61 percent of job seekers have been ghosted after an interview, which shows how universal the failure is.
Should rejection emails be automated?
The sending, yes; the deciding, no. Templates and bulk send make notification nearly free, but the rejection itself should follow a human decision, like moving the candidate to a rejected stage, never an automatic score threshold.
Does rejecting candidates well actually matter for a small company?
Yes, disproportionately. Small companies hire repeatedly from the same pool, and candidates remember silence. A prompt, respectful rejection keeps strong runners-up warm for the next role and protects your reviews and referral pipeline.