15
16 Comments

Cold email hacking: My journey in cold outreach and what I learned

Hey indie hackers -

Cold outreach can be one of the most daunting tasks for any indie hacker, but it's also one of the most effective ways to drive numbers up and grow your business. I learned this the hard way over the last few months, and in this post, I'll share what I've learned from email hacking (as a n00b) these past three months.

The Challenges of Cold Outreach

When I first started with cold outreach, I was overwhelmed by the sheer volume of tasks: sourcing contacts, drafting personalized emails, massaging data for contact files, orchestrating mail automation campaigns, AND ensuring they didn't end up in spam. Over time, I experimented with various tools, each with its pros and cons. In this post I'll describe the tools I've tried and the stack I'm currently using and introduce an open-source tool that I've built that we are now using for email delivery.

Apollo: A Double-Edged Sword?

Apollo was one of the first tools I used and it's a powerhouse of a tool. It's incredibly feature rich in automation and offers a really extensive database that makes finding potential leads a breeze. However, for what wins it has in feature richness, I found it extremely difficult to use as a beginner and what time I did put into it came out unfruitful. I managed to use it to orchestrate several mass email campaigns to 500+ ICPs but what killed me was it was a black box that seemingly didn't work. I quickly discovered that most of my emails sent through Apollo ended up in spam folders... I tried several experiments through the platform, changing up text, time of day that mail got sent, and which inbox it came from, and what domain records I needed to set to optimize my mail outreach. Safe the say, the effort put into this system felt wasted when they didn't even reach the intended inbox. I understand Apollo is a state of the art tool and many companies have used this successfully, where my gaps are probably lie in my not understanding how to fully use it but as founders we all know time and mental energy are both limited.

Enter Streak: Email delivery that worked!

I was convinced that after weeks of no responses that the Apollo delivery engine was broken so I tested it with a different platform. In my quest for better deliverability, I turned to Streak. From Apollo, I exported all the contacts I had already reached out to prior (crazy right?) and imported them into Streak, re-sending the same emails. The results were surprising - People actually got back to me (and in droves).

Wow. I felt like I had unlocked something. It didn’t matter if people even were telling me to F— off, I was ecstatic that my emails were getting through. Now I could focus on creating content that would convert.

However, Streak came with its own set of challenges. The UX was buggy, making it difficult to personalize emails effectively. Additionally, the cost was another deterrent, especially for me being on a tight budget. I still pay for Apollo as I found that resource for sourcing leads to be invaluable and it didn’t make sense to me to pay for streak solely for sending mail when I didn’t love it. While Streak proved that deliverability could be improved, it wasn't the ideal long-term solution for us.

The Birth of Mailmerge-js

For contact sourcing, we were more than happy with Apollo but we needed a reliable, customizable, and cost-effective solution delivery. The frustrations with existing tools led me and my co-founder to develop mailmerge-js. This was an internal CLI we built for dead simple mail personalization and sending, specifically for cold email. 

We were able to accomplish dead simple sending by just using the Gmail APIs and sending out of our inboxes directly, however we had to re-invent the wheel when it came to mailmerge. I’ll say though, I think we did it better. 

One of the frustrating things we encountered with sending mass mail (mail merge) was with templating — the fact that sometimes data fields in contacts would be missing and templates had to “compile” with the right variables in order to synthesize the message. This also meant that you couldn’t write hyper personalized mails since you had to conform to the meager number of variables that were shared amongst all your contacts’ data. We realized that this kind of stuff could be so easily smoothed out with AI. Thus, mailmerge-js supports “fuzzy” template synthesis where you can express (in broad strokes) what variables should be inserted where and abstract directives that allow you to personalize your message further. 

For example, take a look at this sample draft here:


Subject

{{ "Insert some subject related to connecting via their company or title, whichever more appropriate" }}

Body
Hi {{first name}},

I hope this message finds you well. I'm Bob from MailMerge-JS, a startup that's building a tool to automate email outreach.
I came across your profile and was impressed by your track record in {{ industry in company }} and wanted to show
you how our tool can help you automate {{ insert reason to use the outreach tool based on their title }}

Would you be open to a quick chat next week?

Best,
Bob @ MailMerge-JS
https://mailmerge-js.dev


I hope our experiences with cold outreach resonate with some of you and you can learn from our journey. In the meantime, we’ve open-sourced our tool and we hope you find it as useful as we have.

https://github.com/WarmSaluters/mailmerge-js

Happy hacking!

on May 23, 2024
  1. 2

    How do you send "personalized" email while "sending in bulk" as well? A lil bit confused here.

    1. 1

      Yes you can do both. But your personalization is only as good as your data, so if you want to personalize in bulk you also need to collect quality data in bulk. And it can go way beyond mere title and company name.

      Right now I send 1k personalized emails a day and they have a 15% reply rate.

      Have a newsletter coming up on this topic if you are interested:
      https://coldstart.beehiiv.com/subscribe

    2. 1

      Generally you'd use some kind of software that lets you write templates with variables like:

      Hi {{ customer.firstName }}, I saw you were {{ customer. title }} at {{ customer.company}}.

      It's not personalized as in handwritten but it does tailor the message to the recipient.

  2. 1

    You say you quickly discovered most of your cold emails were ending up in spam folders, but how did you discover this?

    I'm currently using Instantly . ai for my agency and it's a black box for me where they end up - I get a pretty good open rate though.

    1. 1

      Hey Tom,

      Several ways.

      1. My own test email to myself from Apollo got sent to spam.

      2. Lack of automated message replies. Before I discovered Apollo, I had been manually sending out emails and every time I'd get at least a handful of responses from an automated vacation reply or a message saying the person had moved on from the role. When I used Apollo, curiously I stopped getting those messages despite the system having had send hundreds of emails.

      3. I experimented with re-sending to those Apollo emails from a different provider (streak) and that worked. After about 300 or so emails with Apollo and 0 responses, I thought it couldnt hurt to rebump what would have been lost leads anyway with a different provider. When I did that, responses came back! (Both automated and non-automated)

      Of course, YMMV and I think Apollo is probably a great tool that takes time to figure out, but it wasnt something I was willing to spend time on

      1. 1

        ah, okay. interesting.
        so, you had at least a little bit of baseline to work off of from sending individual emails.
        Good thinking about including my own email in the batches.
        thank you!

  3. 1

    Thanks for sharing your journey!

  4. 1

    I tried my best but its not possible

  5. 1

    Ok, Running straight to apollo.io and Streak now! :) for https://simpleurl.tech

  6. 1

    what is the cold email "

  7. 1

    Thank you, Charles! Loved reading this. We did this with videofeedbackr and quickly realized personalized outreach is best. If you're not careful, getting to the spam box is very very easy.

  8. 1

    Being able to express the desired variable insertions in broad terms, rather than relying on an exact match, and having directives to further customize the message can go a long way in creating more engaging and relevant communications

    Leveraging AI capabilities to smooth out these kinds of templating and data challenges is a great way to improve the mail merge experience. By automating the handling of missing or inconsistent data fields, an AI-powered system can generate personalized content more reliably and with less manual effort.

  9. 1

    This was very insightful,Charles.I'm always up against a wall when it comes to cold email outreach, for obtaining responses to surveys

  10. 1

    I appreciate this so much!

    I am still figuring out how to get first customers.

    I am building in the supplements space, which I am learning is hard to promote.

    Do you know if cold outreach in this niche worth it?

    Thinking I could source leads from Twitter

  11. 1

    How good is your conversion rate cold outreaching? I wrote a script to send cold DM to reddit users (I build the list using a very basic algo detecting if they might be interested). It's given me quite some success (I've gotten around 2.5% conversion rate, some subreddits are better than others). Granted I'm targeting an intersection between B2B and B2C users. A B2B focus would probably have a lower conversion rate, but much higher value per user acquired.

    I think cold outreach is a very underrated method of getting users. Many people write emails that sounds like it's AI written (mostly due to dry business speak and jargons), and then wonder why no one replied. My tip is to be honest, be personal, use simple language and sound like a real person. It would boost your conversion rate by a lot!

    1. 1

      This is interesting. Would you be at all willing to share the script?

      I am only starting on Reddit. It is driving most of the traffic to my website, which I am excited about, but it is coming from posts on subs. I didn't think about DMs.

  12. 0

    This comment was deleted a year ago.

Trending on Indie Hackers
Your SaaS Isn’t Failing — Your Copy Is. User Avatar 61 comments The Future of Automation: Why Agents + Frontend Matter More Than Workflow Automation User Avatar 21 comments No Install, No Cost, Just Code User Avatar 20 comments Build AI Agents & SaaS Apps Visually : Powered by Simplita ai User Avatar 17 comments AI Turned My $0 Idea into $10K/Month in 45 Days – No Code, Just This One Trick User Avatar 13 comments For years, I was terrible at estimating projects. Here’s what changed. User Avatar 6 comments