How I Built An Automation Tool For Developers And Grew It To $28K/Month

Published: November 29th, 2019
Joel Griffith
Founder, Browserless
$50K
revenue/mo
1
Founders
0
Employees
Browserless
from Portland, Oregon, USA
started November 2017
$50,000
revenue/mo
1
Founders
0
Employees
Discover what tools Joel recommends to grow your business!
social media
productivity
payments
blog
design
stock images
other
Discover what books Joel recommends to grow your business!
Want more updates on Browserless? Check out these stories:

Hello! Who are you and what business did you start?

Hey folks! I’m Joel Griffith, founder and sole entrepreneur for a business called browserless.

browserless is one of those newfangled “SaaS” businesses (software-as-a-service), and lets users automate all the stuff you’d normally have to do manually with a web browser. This can be as simple as taking screenshots of your page, perusing the internet for data, or even generating PDFs of a cool dashboard on your site.

I’ve been building the company over the last two years, and this September we did about $28,000 in sales.

how-i-built-an-automation-tool-for-developers-and-grew-it-to-28k-month
Used our service to generate this screenshot

What's your backstory and how did you come up with the idea?

It’s a bit of a curvy road in how we got here. Like a lot of businesses out there, browserless was something I stumbled upon while building other things. Kind of like how alchemy was back in the Medieval ages: I was trying to make gold but instead discovered plutonium, if you follow my metaphor.

Being pushed outside of your comfort zone is when the biggest changes can come about, but getting there is incredibly challenging, so get used to not always being in control!

More specifically I was building a wishlist app for my family to use to create birthdays, weddings and holiday lists. The core idea was to gather items from across the internet into one place, as opposed to the way it works now where a single site pretty much “owns” your list. Anyways, while working on this I ran into frequent issues where certain sites didn’t have any product details available via programmatic means. Most of the time this is pretty easy to work around: you simply “get” the site’s contents and parse out the parts you care about. However, certain sites explicitly don’t have this information in their site’s content. You have to have a web browser actually load the page, execute all the code before the data you care about is even there!

This sounds like a problem most folks will think isn’t really a problem. But, as a developer, I can tell you with pretty good certainty that it still is a problem, and the solutions at the time were extremely costly, don’t work well, and use pretty unsophisticated technology that’s brittle. They were also hard to use for certain cases like pages that required you to login or are only available via your corporate intranet. What I really wanted was a way to control what the browser was doing with high-fidelity, and on-demand (another pitfall with other solutions).

After taking a tough look at what I was building, and the clear lack in the market for a tool I already needed, I decided it was time to pivot into this new business.

Take us through the process of designing, prototyping, and manufacturing your first product.

how-i-built-an-automation-tool-for-developers-and-grew-it-to-28k-month
My first version of the site

Since the product is purely a software service there wasn’t any manufacturing or designing that needed to be done. Building software with recurring revenue is a particularly great business model as there’s generally low or no upfront costs. Since I’m a software engineer by trade this made it possible for me to self-fund. To put it quite simply: I spent no money whatsoever to get started, just a lot of time.

I knew roughly how the product looked like and worked: a cloud-based service where users (mostly developers) could connect to a headless browser and tell it what to do. However, I didn’t know how to charge for it and spent a good deal of time trying to come up with a model wherein I wasn’t left holding a huge bill. In a lot of cloud-services providers simply over-buy compute to ensure there’s enough supply to go around. This is fine for them: they can recoup their expenses via margins or simply eat-it as they’re in growth-mode and living on borrowed money. I didn’t have either of these comforts, so I naturally came to an on-demand model where I buy no infrastructure until someone signs up. It’s then, and only then, does my software go and provision for a new account. When I originally started I think I had a baseline cost of around $40/ in order to keep things running, which is nothing when you think about it.

how-i-built-an-automation-tool-for-developers-and-grew-it-to-28k-month
My “first office” where I wrote the original code

how-i-built-an-automation-tool-for-developers-and-grew-it-to-28k-month
My “new” office now that it generates revenue

Putting these two things together, I decided it was time to trial the service and all its technology. I was able to build up a small list of potential users through a landing page, and even garnished a few more folks from various issues they troubleshooting across the web. This process lasted about a month or so, and after things stabilized I opened the service for anyone to sign-up on.

Describe the process of launching the business.

The process of launching was, in my opinion, entirely underwhelming. After spending months building and testing the product I was hopeful that we’d have gotten a few customers on day one. However, it turns out that the old “if you build it they will come” adage doesn’t really work out that way. You have to go out and meet your customers where they’re at in order to start gaining any sort of traction. So, for the first week or so, we literally had no one sign-up or even contact us. As a matter of fact, the first few months were painfully slow since the product was so new, and I didn’t have any sort of prior social following.

What eventually worked was when I started blogging about the product, how it works and what it can do, which eventually led to our first few real users. Early on I was mostly writing about best-practices and how to make things easier -- all the stuff that I knew people were searching for because I was searching for it as well! I even wrote a few times about running the business itself. Things like good habits, how to provide good service, and how to tackle the hard stuff. Surprisingly it’s nothing you probably don’t already know, however saying the same thing a different way can often produce different results. You don’t really know until you try, and trying new strategies was how we found what worked.

All this cost me was time and improving my writing skills, and after a few posts got some traffic from bigger sites then we started to get some real momentum. It’s quite different than a lot of the success stories you hear, where most folks launch with something and it sells out like crazy or they can’t even meet initial demand. While I do think those types of events occur they are in no case the norm. Sometimes the thing you just built won’t have an audience for a while or is just ahead of the demand curve. If you give up right away you’ll never know.

Since launch, what has worked to attract and retain customers?

We tried a lot of things, including paid marketing, which unfortunately didn’t work as well as I’d hoped. I sort of naively assumed that since we had some recognition amongst developers that paid ads would be like throwing gas on the fire. After running ads for a few months I don’t believe we got a single sign-up for it, so I pulled the plug.

A good salesman will end things early if they know it’s not going to be a good fit, versus pushing a solution that doesn’t work.

As boring as it is, the things that have helped attract users and retain them are is our support and content. I do a lot of work on our blog, helping users on other sites, and even helping our customers one-on-one where I can. Normally you’d have to charge for stuff like this, and we definitely do for bigger projects, but I feel it’s really important to win over fans versus build a user-base, especially when you’re not spending money on marketing. It also depends heavily on the market you’re after, and whether or not those people even respond to advertising. My guess is that most of our target users are running ad-blockers, so I’d doubt we’d even be showing stuff to the right people at the right time.

how-i-built-an-automation-tool-for-developers-and-grew-it-to-28k-month
One of our most-referenced blog posts

As an example, one of our most trafficked blog-posts is just a simple guide on how to get better performance out of puppeteer. Since we’ve got over 600 users doing puppeteer work daily, we have a good sense of what works and what doesn’t. This actually helps us in two ways: it’s great SEO content that new users will find at the start of their journey, and it helps get these folks set up for success. That last part is really key: setting expectations early on, and even getting more performance than you anticipated, makes for “fans” of your service that will go tell others. Word of mouth is incredibly powerful if it’s the good kind!

Another example is a post with details on scaling out your headless work on your own and what you can expect. This doesn’t necessarily convert that great, but it does establish some good-faith feelings. It also serves as a mechanism to build up browserless as a domain expert on running headless browsers, which is a great non-tangible thing to “offer” in away. Wouldn’t you want the expert in the field helping you out to get started?

The other big thing that has helped is being open-source. You can try out our code, on your own computer, for absolutely no cost whatsoever. This gives you a lot of time trying out the service and sees if it fits without spending a dime. This also saves us the hassle of supporting, securing, and (in the end) chaperoning free accounts so that they’re not abused. I’d imagine we lose some monthly cost, but it helps a lot in retention: the users already know the product and have possibly read the source. It’s something I value personally, and since I happen to also be a developer it gives me a glance at how our users feel as well.

How are you doing today and what does the future look like?

how-i-built-an-automation-tool-for-developers-and-grew-it-to-28k-month

The greatest thing is that we’ve been profitable since the first user signed up. I’ve never had to bring aboard to make trivial decisions and the monetization model is already in place, so all of the business stuff is done which is something I think late-stage startups can run into issues with.

Our margins are doing pretty well, hovering around 80%, and we don’t really spend money on ads or anything else aside from infrastructure. Almost all of our sales are self-serve, though we do occasionally get questions. I generally prefer higher-touch sales as it builds a better overall relationship, which can last longer than the business itself.

I’m keen to get more involved with enterprise users, which have a lot more restrictions and barriers to entry. Having been an engineer in many enterprise companies, the challenges they face are quite large and harder to scale. Having a product that can be more easily adopted in their scenarios will help us tremendously, so I’m looking forward to that.

Through starting the business, have you learned anything particularly helpful or advantageous?

Hahaha, there’s* so* much to talk about it’s almost hard to know where to get started! The first thing I’d say, without question, is getting better at writing. Since most of our customer acquisition is via content, and that’s where a lot of our users find us, having a good first-impression there is critical. It also helps immensely in emails and the sales cycle, as the more concise and poignant you are the more deals you will close.

Learn to write, validate, and execute as cheaply and quickly as possible. Nothing’s worse than learning the idea has no merit and you’ve wasted a year even getting the thing off the ground.

That segways nicely into the next one: sales. I hated the thought of doing sales, but because I had the wrong definition of what sales actually is. Originally, I correlated sales as “selling as much as possible” to everyone, but the reality is quite different. A good salesman will end things early if they know it’s not going to be a good fit, versus pushing a solution that doesn’t work. Actually, a lot of the time my sales cycle is purely just listening to what folks are trying to do and working back from that to see if browserless can do what they need it to. Obviously, it’s great if it works: we build a nice relationship and they solve a problem they’re having. If it doesn’t then no sweat, we both move on. The worst thing that can happen is if you over-sell to people that don’t need the product, which can show up in metrics like churn and retention.

The last thing I’d say is dealing with the roller coaster of software. You’ll have someone sign-up one day for a multi-thousand dollar plan, and lose your #2 customer the next. Now, this obviously isn’t every day, but it can and does happen and it takes you on an emotional roller coaster. Learning to cope with the highs and lows will definitely keep you in the game longer. There’s definitely a reason why most people don’t strike-out on their own: you really have to be the right kind of crazy.

What platform/tools do you use for your business?

I’m super old-school in the tools I use, which probably flies in contrast to being a tech startup! We use Stripe for doing all the really hard parts (billing and payment settling), Sendgrid for transactional emails, and DigitalOcean for all of our infrastructure. Since most of our users are self-initiating we don’t yet utilize CRMs, however, I probably over-utilize Gmail to force it to be a CRM.

What I mean by that is that I do the whole “inbox-zero” setup. If I have an email in my account then something terribly wrong has gone on! What this means, pretty simply, is when an email comes in I label it, set a reminder on it, and generally write the person back pretty quickly. If I can answer it right then and there I generally do so, however, if it’s going to take some time I’ll let them know that I’m on it but will get back in touch.

The last thing I’ll say is that I write a lot of my own tools, being a developer and all! They’re pretty business-specific, so I’m not sure they’re entirely useful outside of browserless, but I’m sure there’s another business hiding in there potentially!

What have been the most influential books, podcasts, or other resources?

The one I highly, highly recommend is IndieHackers if you’re looking to do a more software/hardware business. There’s a lot of new folks and seasoned veterans there, so you’re likely to find someone in your position and someone a step or two ahead. Having both is super helpful so you can get reassurance on where you’re at, and know what’s ahead.

I also enjoy the How I Built This podcast as well, but more for the inspiring stories than the execution-ary part. It helps to have a goal to work towards, however sometimes seeing how well others are doing can be depressing, and I’ve found “How I Built This” to be a good balance since they give you the good and the bad.

Advice for other entrepreneurs who want to get started or are just starting out?

Learn to write, validate, and execute as cheaply and quickly as possible. Nothing’s worse than learning the idea has no merit and you’ve wasted a year even getting the thing off the ground. Find new communities and place to post what you’re working on, and definitely don’t let no always be a final answer. It takes some time to learn when to press or when to throw in the towel, and there’s no hard and fast rule, so be ready to get uncomfortable and test the boundaries.

The final thing I’ll say is that it’s incredibly freeing to know you’re not made of glass. Test yourself: make the call you wouldn’t normally, go out of the way to help someone who’s possibly angry at you, and practice saying yes more than no. Being pushed outside of your comfort zone is when the biggest changes can come about, but getting there is incredibly challenging, so get used to not always being in control!

Where can we go to learn more?

If you have any questions or comments, drop a comment below!