It is a good milestone to make a compact snapshot of the insights that (maybe?) led to it.
ScreenshotOne reached $200K ARR with 400+ paying customers
It is a good milestone to make a compact snapshot of the insights that (maybe?) led to it.
I want to share my journey and appreciation I have for it with all of you, my customers, my supporters, my friends and my family.
ScreenshotOne has been launched almost 3 years ago. And now, it reaches $200,000 in annual recurring revenue with 400+ paying customers.
It feels like I just shared the lessons learned from the first marketing month a few days ago. Time flies.
I don’t believe it. It is crazy!
A lot of ScreenshotOne customers come from Google and they might not now know it, but I actively share everything about building and growing ScreenshotOne on X, LinkedIn, Bluesky and Threads.
But I have never shared all these numbers, thoughts and ideas in the ScreenshotOne blog. I think that for this particular case, the blog format fits better than sharing on X or LinkedIn.
I will consider using this format in the future, too. I can write a post once including all the details and graphics the way I want it and then distribute it on social media and other platforms.
And I am sure that the link will be saved, while on social I might be blocked and not everyone has access to it. I want to be able to share it with my friends, too.
Fully bootstrapped and funded by lovely ScreenshotOne customers.
It feels unbelievable. And I am proud of the work that has been done and led ScreenshotOne to this milestone.
But it wouldn’t be possible without ScreenshotOne customers who value the product and share feedback with me, without the community of builders and makers I am part of, my friends and my family.
I am incredibly lucky to experience all that and appreciate a lot. But there is a lot of work ahead. And I am excited about it as never before.
I can write forever about all the lessons I learned why building and growing ScreenshotOne. But! I don’t know precisely what worked and what not.
Even when backed with data, I still believe I am operating in the fog and guessing it.
However, somehow I managed to navigate to the current point even through the fog. How? I have a few guesses.
The market you are in is everything. It is banal, but it doesn’t make it less true.
If your market is growing, you will be growing too. It will literally pull you, especially if you managed to beat your competitors.
In my case, I managed to achieve the first positions on many marketing channels. But screenshotting is still a niche business and it is impossible to squeeze additional $5 million ARR in one year. There is no capacity for that.
Positioning is how you resonate with your customers. Without understanding whom you sell to, you can’t resonate with them. And can’t build a good product for them.
Ironically, it is counterintuitive, but focusing on one specific customer persona won’t make you lose customers, but might bring even more.
If you don’t have any idea whom you are going to sell your product, don’t build it. Either do more research, or do build it an still do research, or bet on something else. But a have a picture in your mind of your ideal customer profile. I don’t believe you can progress without it.
Positioning determines your blog posts, channels, tweets, features, pricing… It is everything.
Marketing is both your product, your positioning and how you distribute it. But I want to emphasize one thing, which is unpopular, but a good product might sell!
I often see launches by people and go and try their product. And even I wanted to buy it, I can’t. Cause many products just don’t work. Make it work, make it simple and make it lovable.
I can’t emphasize enough how much easier it is to sell a working and good product.
“Get rich by focus. Stay rich by diversification.”
Launched a product in the niche that is validated and already has many products and money. Stick with it. Keep improving the product. Make everything possible but find your first users.
If the market is validated, there is zero reason to fail. You can’t fail literally.
By the way, Screenshot APIs is a bad example. Cause there is not a lot of money, but harsh competition.
The opposite to what I write above, yes? But it is good for your soul. And what is good for your mental health, is good for your business.
No matter how focused you are, but anyway!
Launch side projects, go on hikes, meet new people, take vacations… All that compounds and might reveal new insights for your main product.
For, example, I launched a new product for tracking brand visible in LLMs and optimizing marketing for LLMs. While building it and checking ScreenshotOne’s presence in AI, I realized how much more work I need to do it to improve its visibility.
And I tried a new technology—PostgreSQL, and assessed if it could fit ScreenshotOne better than current one—MySQL. And the short answer is “maybe”.
But now I am refreshed and feel that I can double-down on ScreenshotOne long-term.
The same as with insights, I could dump my whole backlog and you would see how many things I want to build.
I don’t plan to hire anybody for full-time role, anytime soon. Since I have enough time to keep up with all the customer demand.
However, one of the things I didn’t have time on is to redesign the marketing website and adjust it for my growing marketing needs.
But I was lucky to order a redesign from Alex Szhzurek from uncoverLAB and the current marketing website version while still in progress is her work.
And part-time front-end developer to help implement all her ideas—Piotr Kulpinski. I can’t stress enough how skilled are these people and how I am impressed by their work.
They are both the top professionals in their fields and it is the level of work you will rarely see.
Obsessing over delivering the best product for my customers is that the thing that I will keep doing daily.
Whatever ScreenshotOne customers asks in the support chat and whatever features they request, I try to solve all their needs as fast as possible.
That means also updating documentation, updating our playground, crafting SDKs and everything that leads to better UI/UX/DX of using and integrating ScreenshotOne.
However, product quality is never done. I want to render screenshots faster, have lower error rate and less bugs. Nobody needs to tell me this, I know that happens.
I managed to keep only 2 major features in ScreenshotOne: regular screenshots and videos. And almost haven’t added any new significant parameters and API methods for the past 2 years. It allowed me to polish the product and make it laser-focused on solving one simple task, but solve it well.
However, my customers ask more and more about other features for the screenshot API:
Scheduled screenshots.
Long-term archival of screenshots.
Comparing screenshot differences.
More native integrations with Make and other no-code tools.
Also, we need to improve the dashboard:
Managing organizations.
More granularity and configuration of API keys.
Better onboarding.
And more. I think, it is time to give up and start adding more features that people ask me.
Do you think there is still value sharing my MRR for somebody except for my competitors?
I share it now as a habit, partially as marketing, partially I like seeing others learning from what I do, building and succeeding, too.
But money is not a huge focus for me anymore, why then talking about something that I don’t care? It is an open question for me. It also does attract copycats. People reach out even and ask questions about how I implement some features, I try to answer and help everybody. But I feel it becomes dumber and dumber idea. And it plays against me. Which doesn’t make any sense.
There is a human behind ScreenshotOne. And as many other humans, this one wants to take a real vacation, at least once in the past 3 years. Real vacation means something hiking 7 days without the Internet and keep ScreenshotOne operational.
How I will achieve that is another question. But that one of the goals that seems important to me. I keep working daily, but it is not sustainable long-term.
I must automate more and more processes, and if needed hire people to help me. Maybe even as a backup for myself.
That seems like a real next challenge for me, personally.
Thank you for reading! And I really really wish more people experienced what it feels to serve customers by building a product they love.
Interviews, tips, guides, industry best practices, and news.
With Python, you can take website screenshots in multiple ways. But the best way to do it depends solely on your needs and your use case. Let's quickly examine all the options.
Cloudflare recently launched a new Browser Rendering platform. I decided to dive into it and quickly check if I could use it in ScreenshotOne to provide a faster and better customer experience.
You can use the ScreenshotOne API to generate screenshots of social media pages (personal profiles or company pages) and in this post, I will shortly cover how to do that.
Exhaustive documentation, ready SDKs, no-code tools, and other automation to help you render website screenshots and outsource all the boring work related to that to us.