Imagine you apply to a job at a startup you're jazzed about. After two hour-long phone interviews, they invite you onsite, where you pair program for a day, have lunch with the entire team, meet your potential boss, and ask a bunch of carefully-researched questions about the company. After the interview, you wait with bated breath for the response…
…which is a standard form letter: "We have reviewed your background and qualifications and find that we do not have an appropriate position for you at this time. We appreciate your interest…" 
That's impersonal, cold, and aloof — and also the standard in startup recruiting.
Give Personalized Feedback
Most startups don't give candidates personal feedback when saying "no." I had some initial hesitation about giving feedback. But having tried it, the results are nothing but good.
Most people are surprised and grateful to receive feedback. In one dramatic case, it actually landed us an amazing hire. We interviewed a strong student who nonetheless wasn't the right fit at the time. We sent a long message explaining our reasoning, and, surprisingly enough, the student said he understood our reasoning, but thought his roommate would be a perfect fit. Turns out he was right: we interviewed his roommate, made an offer, and he became one of the strongest engineers on the team. The world isn't always a fair place, but sometimes doing the right thing is rewarded.
The negatives are minor. Out of 100+ candidates, only one person has tried to argue with the result. The time investment is typically about 15-30 minutes, which is small compared to the time spent on a full-day on-site interview and phone interviews.
Striking the Right Tone
When writing the feedback, you have to strike a delicate tone, and that's best done by having the right attitude. You're not rejecting somebody because they're not "good enough"—even the best-run hiring processes reject lots of great people since a false positive is more costly than a false negative. And many times, especially for early stage startups, you'd say "no" to somebody as employee #3 who you'd gladly hire as employee #20. Fit with the company, and the stage of the company, matter a lot. Try to be gracious. It doesn't mean you can't also be straightforward, but acknowledge that your hiring process has noise and subjectivity.
It helps to be specific and explain why you're looking for whatever skill you're looking for. For example, "We were really impressed by your answers to the algorithms questions, and your Python code was very clean, but when it came to the questions requiring C programming, we were looking for more fluency using pointers in real-life situations, and more knowledge of operating systems implementation like page tables, inodes, and how different layers of the networking stack work. We focus a lot on those skills since we're building a memory-mapped distributed database." The details vary, but you get the impression. After getting that feedback, you can imagine somebody practicing those skills and reading up on those areas so that they do better next time.
How can you tell whether you're hitting the right tone? Look at the response rate. Most people will thank you for a gracious and helpful reply with feedback. If your response rate is below 80%, there's something wrong with the message.
As always, there are legal risks involved with anything related to hiring. This is not legal advice. Check with a lawyer.
If you're a founder, it's easy to blow off giving candidates feedback as a waste of time. Most founders are stressed and overworked, and hiring already consumes heaps of time. But somebody who spent a day interviewing with you deserves more than a form letter. Giving them feedback on how to improve is worth the time, and might just land you your next hire.
 These are even more hilarious when the company includes multiple templates to cover scenarios like being rejected after the resume, phone interview, or onsite in the same email.