We kicked off a new series that productized something we’ve been doing for 10+ years at SaaStr … getting top leaders to share their mistakes. So the rest of us can get to $100m+ ARR faster, with less stress and more success. We’ve done a ton of this content over the years, but never on a consistent basis. The first was with Nick Mehta, CEO of Gainsight here, and it was very popular. Next up is Jason Cohen, founder of $100m+ WP Engine. His classic session from 2019 SaaStr Annual continues to be one of our more popular pieces of content on YouTube:
Jason Cohen came back and now shares His Top 10 Mistakes Getting to the First $100m in ARR — Jason, ed.
Over the past 23 years, I founded four companies, sold two, both bootstrapped and raised ($300M). Two are currently Unicorns; three are still in business.
I’ve been writing about startups for 16 years at A Smart Bear (https://longform.
Here are my top ten mistakes. Please don’t repeat them!
1. Believing I had to do a job before I could hire someone to do that job
It makes sense: How can you hire someone, and hold them accountable, if you don’t know anything about the domain? What would you ask in an interview, to see whether they’re good?
So for example, at Smart Bear I knew we needed better SEO. So I learned about SEO and tried it. Results were mediocre as expected. Then I tried hiring SEO experts. Results were still mediocre. So I wasted a lot of time.
Just because I went from a 0 to a 2 out of 10 in SEO skills, doesn’t mean I know how to identify and hire a 9. I still wouldn’t know what to ask, and still wouldn’t know what results should be expected, because I’m still a 2.
Yes it’s difficult to hire far above your own skillset, in any domain, but that’s a primary job requirement of any executive, and especially the CEO. Otherwise you’re building an organization of 2s.
2. Believing a failed experiment disproves a theory
Early in WP Engine’s history I tried building an affiliate program to generate sales. It made sense: Other hosting companies were successful at it, as were other WordPress companies, so it should work for us. It didn’t — we get barely any sales, and those we got were low-dollar and high-churn.
We declared it a failure and moved on. And we were right.
Years later a new VP of Marketing said he wanted to try affiliate marketing. I said it didn’t work, we already tried it. But you let VPs try things, and this time it worked. And stayed working for years.
Just because it failed once, doesn’t mean it cannot ever work, especially at a new time and with a fresh attempt.
3. Not raising enough money
Fortunately we never made the mistake of raising too much money, but we did make the mistake of raising too little.
It always takes more money than you think. If you grow slower than expected, you need the extra money for the hires you already made and for more experiments and building to get out of the problem. If you grow faster than expected, costs rise more quickly and you hire more quickly so you also need extra money.
So, when you’re think about raising “enough for 12-18 months,” based on some financial projection that you already know is suspicious, add 50% – 100% to that figure.
4. Trusting customer validation before there’s an actual product to validate
Everyone says you need to validate ideas before you build them. I do too, in fact I’ve written extensively about [how to do it](https://longform.
However, I’ve also found that said “validation” is not validation. There are untold numbers of founders who did all that and then people didn’t buy it (enough). That happened to us at Smart Bear and WP Engine with features and entire products.
People don’t actually know what they’ll buy, or at least you’re probably not good enough to use interviews to figure it out. Even professional interviews get it wrong all the time.
What validation can do is _disprove_ an idea, i.e. show you it’s definitely wrong. But when it seems validated, just think: It’s just _not disproved_, so a quick early product is the only way to know for sure.
5. Not being honest about what the company can deliver
Early on in both Smart Bear and WP Engine both (because I didn’t learn the lesson the first time), I would say “yes” to customers that we really couldn’t support. Of course it was because they were big logos willing to write genuinely big checks.
If they really are your target customer, and their demands really are already in your roadmap, so that stretching to bring them on board means reordering existing work, then it’s great. But usually it means adding features and unpaid professional services that takes you in a different direction.
The result is you stall on building the right things for the right customers, slowing your growth and giving competitors time to catch up, while the misfit customer gets irritated with your constant inability to serve them, and leaves anyway. Worst of both worlds.
It’s very hard to say “no,” but you don’t have enough time to do anything else.
Also you’d better have a strategy, so you know what the “right customer and right product” even is…
6. Thinking that “strategy” is for MBAs who don’t understand startups
I used to say: “I don’t know what I’m having for lunch on Thursday, so I certainly don’t know what will happen in the next three years, so business plans are for people who like to write documents instead of write code or sell stuff.”
It _is_ true that three-year financial projections are silly for a one-year-old company. It’s also true that academic “business plans” and “traditional strategy” makes no sense for a young company, or maybe ever, as there are many other kinds of modern strategies. So many examples of “strategy” are indeed terrible, and deserve ridicule.
However, if you have no idea who your product is for, or how you want to position it in the market, or what one or two biggest challenges you need to spend many months or years overcoming, or which special strengths you must ensure you’re applying to the product, or how you will have something unique and defensible in a few years when everyone else has copied your best ideas, then you’re just mis-managing your company, and success is only luck, instead of great execution against the right ideas _and_ luck.
7. Thinking the competition had everything figured out
It’s an understandable mistake. The only thing you see about the competition is what they publish, and everything they publish is great.
Every news announcement sounds confident, and like they just lept ahead; you don’t know that actually no one is paying for it yet, and it doesn’t work well, and maybe it still won’t work well in three years. The website sounds so confident and clear. The testimonial of the customer that used to be yours, stares you in the face, saying “they are better than you.”
I’ve found that this is rarely reality. It’s most obvious when someone joins your company from theirs, and relates a long list of crazy things: They completely don’t understand X, product Y is failing, department Z is in shambles and will take years to repair, and pricing or features that you thought was the result of customer validation and insight turns out to just be made up and isn’t working.
You see the same in yourself, and therefore think you’re screwed up while they have their shit together, but actually all of us are screwed up, all the time, in many ways, only some of which we know about at any time. It’s just that you see your own, and never see theirs.
So, relax about them, and take care of your own stuff.
8. Doing things because a competitor is doing it
A corollary of the previous mistake, is that it’s often a mistake to copy the competitor.
From the previous mistake, you now know that they might have done that thing in error, so now you’re copying a mistake. But also, the competitor has different customers, a different team, a different goal, and a different product, so even if it’s great for _them_, that doesn’t make it great for _you_. Many times I’ve copied a feature, or pricing, or policy, or design, only to find it doesn’t work.
Instead, focus on becoming the best version of yourself, executing your own strategy, listing to your own customers, and running on your own path.
If, by doing that, you still find that you need to catch up to a competitor, _then_ you should indeed do that to remain competitive. But only because it’s genuinely the right thing to do.
9. Doing too much at once
We _still_ struggle with this at WP Engine, and it’s still a mistake.
You can do 5 things at 100% with the same energy as 10 things at 50%. One gets you 5 things. The other gets you nothing for a long time. And that’s not how the math works, because there’s so much overhead in management and status and updates and decisions and surprises and context-switching and people burning out.
I know you think “but all this is important!” Yes, but even if you try to do more, there’s _still_ more important things you’re _still_ not doing — that condition is never solved. You’re just getting less actually done, while killing your team.
Do less, better.
10. Using multi-input, far-future metrics like LTV and IRR
A million blog posts will tell you that LTV is important. Wall Street analysts have figured out that it’s a good number too. There’s all sorts of rules about how LTV : CAC should be bigger than 3 and all that.
And it feels good to have an all-in-one metric that can tell you everything about a cohort, converting the complexity of a recurring-revenue business into a single number that you can optimize, compare, and write goals for. “It worked for Hubspot,” they all exclaim.
The problem is it’s almost all noise, no signal. The main reason is the time-horizon, because the business is going to change dramatically over the course of 5-10 years or whatever your `1/c` calculates. ARPU will change, GPM will change, retention will change, upgrade behavior will change, new cohorts will act differently, competitive markets will change, and your product will change. And yet you’re taking numbers that are a snapshot of “today” and blindly projecting them out 10 years without change. Of course it’s wrong.
The secondary reason is that the more numbers you combine, the more error you get, because the errors inherent in each compound. Not just add, but multiply, because you are in fact multiplying and dividing. This makes the error greater than the signal.
The right metrics look out no more than a year, and stay scoped to specific domains, answering specific questions. So, “payback period” makes sense (ARPU/CAC, the number of months needed before a customer has “paid back” in revenue the cost of acquiring the customer), because both figures are known today, and won’t change dramatically during that time period. And cohort-retention makes sense, because that’s tracking actually behavior month-over-month, allowing you to detect and react to systematic changes. And segmenting and trending GPM is useful to know which customers are more profitable, or which operational activities would be useful to cost-optimize.
These are effectively the components of LTV, except side-stepping all those failures, while measuring important processes that lead to action.