Day 26: Customer acquisition push
Day 26 of 30. Four days left. Time to talk to more potential customers.
Day 26 of 30. Four days left. Time to talk to more potential customers.
We have one paying customer. Our current goal is to have three by day 30. Let’s see what we can do.
Interactive acquisition funnel
See how our customer acquisition funnel is performing:
The plan
When we started this project, we had a many ideas, and no data. Now, 26 days later, we know a bit better what works for us, and what doesn’t.
A small summary below:
- Follow up on warm leads - Two people from earlier outreach showed interest
- More content - Post the “first customer” story
- Direct outreach - Find 20 more potential customers
- Improve conversion - Make the free -> paid path smoother
Following up on warm leads
Lead 1: A developer who builds link shorteners, replied last week with “looks interesting, will check it out.”
Follow-up email:
Hi [Name],
Following up from last week - did you get a chance to try the screenshot API?
We just added some new features (wait for selector, image resizing, caching) based on customer feedback. Happy to walk you through anything.
Also, we just got our first paying customer! If you’re evaluating, I can extend your free trial.
Lead 2: An agency that builds client websites, asked about bulk pricing.
Follow-up:
Hi [Name],
Wanted to follow up on your bulk pricing question. Our Scale plan ($99/month for 100K screenshots) would likely cover your needs, but I’m happy to discuss custom pricing if you need higher volume.
What kind of monthly volume are you looking at?
Content: the “first customer” story
We wrote a post for Indie Hackers:
Title: From $0 to first paying customer in 24 days - lessons from building a screenshot API
Content:
- The journey from idea to paying customer
- What worked (build in public, customer calls, fast iteration)
- What didn’t (assuming we knew what customers wanted)
- Key lesson: responsiveness matters more than features
- Stats: hours spent, lines of code, revenue
This kind of transparent content resonates with the Indie Hackers audience. We posted this at 9 AM for maximum visibility at the recommendation of Claude Opus, but we’ll measure what the best time of the day is for these kind of posts.
Direct outreach
We built a list of 20 companies we know that might need screenshot APIs:
Categories:
- Link preview tools (5 companies)
- Social media schedulers (5 companies)
- Web monitoring tools (3 companies)
- SEO tools (4 companies)
- No-code platforms (3 companies)
Research process for each:
- Check if they have a screenshot feature
- Try to identify how they do it (self-hosted? competitor?)
- Find the right person to contact (CTO, lead developer)
- Craft personalized email
Example outreach:
Subject: How do you handle link previews?
Hi [Name],
I noticed [Product] generates preview images for shared links - nice feature.
Curious: are you running your own headless browser setup, or using a service?
We built a screenshot API and I’m researching how teams solve this. Not trying to sell you anything - genuinely curious about your approach and any pain points.
Cheers, Erik
We sent 15 emails today. We’re expecting about 3-4 responses based on previous rates (and we’re sure they won’t all turn into customers, but that’s to be expected).
Improving free → paid conversion
Our current flow:
- Sign up → Dashboard
- See API key → Try API
- Hit free limit → See upgrade prompt
- Click upgrade → Stripe checkout
We noticed that people sign up, try a few screenshots, then disappear. They’re not hitting the free limit (100/month), so they never see the upgrade prompt.
Changes:
1. Show value faster. We added a “Quick Capture” widget in our dashboard: you enter a URL, see the screenshot immediately. No API integration needed. We also offer a “Workspace” for more flexibility, inspired by Postman, so this should be recognisable for most developers.
2. Show limits clearly. We added a usage bar on the dashboard: “23/100 screenshots used this month”
3. Highlight paid features. Free users see “Pro features” they can’t use (priority processing, longer retention).
4. Nudge at 50%. Email when users hit 50% of free quota: “You’ve used half your free screenshots! Here’s what you can do with Pro…”
Email: 50% quota notification
@Scheduled(cron = "0 0 9 * * *") // Daily at 9 AM
fun sendQuotaNotifications() {
val users = userRepository.findFreeUsersAboveQuotaPercent(50)
users.forEach { user ->
if (!user.hasReceivedQuotaEmail) {
emailService.sendQuotaNotification(user)
userRepository.markQuotaEmailSent(user.id)
}
}
}
Email content:
Subject: You’re halfway through your free screenshots
Hi [Name],
You’ve captured 53 screenshots this month - over half your free quota!
That’s great. It means you’re getting value from the API.
When you’re ready for more, Pro gives you 10,000 screenshots/month for $45. Plus faster processing and priority support.
[Upgrade to Pro] or [Keep using Free]
Air aim here is a soft sell without sounding to pushy, we don’t like spam, we’re confident our users don’t either.
Results so far
By the end of day 26:
Warm lead follow-ups:
- Lead 1: No response yet
- Lead 2: Replied, wants a call tomorrow
Content:
- Indie Hackers post: 34 upvotes, 12 comments, 89 clicks to site
- 4 new signups from IH
Outreach:
- 15 emails sent
- 2 responses so far (both “we use X already” - but still useful intel)
Conversion improvements:
- Changes deployed
- Too early to measure impact
Tomorrow: the sales call
Day 27 we have a call with Lead 2 (the agency), which is a potential high-volume customer, but too early to tell right now.
Book of the day
$100M Leads by Alex Hormozi
Hormozi’s follow-up to $100M Offers, focused entirely on lead generation. The core framework: “lead getters” (content, outreach, ads, affiliates) and “lead magnets” (free value that attracts prospects).
Our dev log series is a lead magnet. Direct outreach is a lead getter. This framework helped us think systematically about customer acquisition.
The book is tactical and actionable. Not everything applies to B2B software, but the mental models are useful.