Aha!’s Bootstrapped Journey From $1 To $100M+ In ARR

April 18, 2023

Today, we’re all inspired by bootstrappers—folks who’ve built enduring software businesses with little or no outside capital. In Growth Unhinged, I’ve had a chance to feature impressive bootstrapped PLG stories from the likes of Hotjar (scaled to $50M+ ARR) and Uscreen (scaled to $20M+ ARR).

My next guest has a story that’s perhaps even more impressive. GTM Leader Danny Archer has scaled teams across all customer org functions including sales, success, and support. He recently wrapped up a 7+ year stint at Aha!, maker of the world’s #1 product development software. Some fast facts about Aha!:

  • Surpassed $100 million in ARR as of March 2022
  • Self-funded, profitable, and 100% remote
  • Adopted by over 700,000 users
  • Makes three core products (Roadmap, Ideas, and Develop) along with two paid education programs (Aha! Certification and Aha! PM Certification)

Keep reading for Danny’s 🔥 insights into building an inbound free trial machine, monetizing enterprise customers, and pairing PLG with sales-assist.

Back in 2014 I joined Aha! as employee no. 4, working out of the CEO’s house alongside the CTO for the first two years. We were just shy of $1 million ARR at the time. By the time I left, we had scaled to 110 employees and more than $100 million ARR. We remained bootstrapped the entire time, never raising outside capital and instead growing organically from our own revenue and profitability.

The company concurrently had between 4,000 to 5,000 free-trial accounts active at any given time and only 40 employees working in customer-facing functions (sales, support, and customer success). Growth came entirely from inbound demand.

In the early days, I ran everything customer-facing from landing Fortune 100 logos and seven-figure accounts to answering support tickets on the weekend. Our growth motion was non-traditional, to say the least. Here I’ll walk through our journey and the lessons learned along the way.

Marketing: Building an inbound free-trial machine

Marketing’s job was straightforward: drive trials.

We did this with hyper-focus on a specific customer profile, software product managers. Aha! created a content engine all around that customer profile. Through our focus, we were able to build a super efficient inbound trial machine. While many early stage companies get in trouble by chasing new personas or market segments, we stuck with our core strategy which paid dividends long-term in our ability to grow efficiently with limited resources.

Our primary website CTA was always free trial. This was front and center whenever someone landed on our website. Over time, we A/B tested many things, including the placement of the CTA, color, and more. But the objective always remained the same: get prospects into a trial.

We did have a secondary Join a demo CTA. This did result in inbound requests, but of significantly lower quality compared to those who signed up for a trial.

Product growth: Nudging free-trial users towards activation

When a prospect started their trial, ownership would shift from marketing to product. Our product team had KPIs around user activation and, more specifically, metrics like:

  • Activity in first seven days
  • Activity in first 30 days (full trial period)
  • Product adoption metrics (Inviting users, adding integrations, creating reports)

The team focused on building out new user workflows to drive organic success of new users. We also had two tracks of automated messaging to drive engagement with our customer team, our lifecycle messages and our adoption messages.

Lifecycle messages

Lifecycle messages were all written as personalized messages and were designed to trigger a “hand-raiser.” Customers responding to our automated message would get a natural response back from our Customers team to initiate a conversation.

  • 30 seconds to help: Email asking all new trial users if they could share how they heard about Aha! and a bit about their intended use case (see example below). This was a relatively simple (and even silly) message given that we already knew the lead source, but it triggered the human behavior to help and it drove a lot of responses. Our team would easily follow up on those responses and offer time for a best practices call to qualify the opportunity and help with activation.
  • Best practices session: Email to users with more than two hours spent in the product letting them know we were testing a new program and offering active trial users like themselves an opportunity to talk with a product expert. This was never a new program, but again it triggered the human behavior of feeling special and drove a bunch of responses, which became consultative sales calls.

The key to all of these is that they were not worded or structured like marketing emails. They were short, to the point, and all written “from” our CEO or VP of customers. I periodically reviewed trial accounts for companies with >100 employees. It was rare to find an account we hadn’t triggered a passive engagement with through these messages and at least offered time to chat. This is important since this process was 100% automated, yet resulted in human engagement with nearly 100% of the customers we wanted to talk to.

Adoption emails

In addition to our standard lifecycle messages, we used automated adoption emails. The intent of these was to drive self-service adoption, not to drive responses or human hand-off. Adoption messages covered things like getting started best practices, suggesting activation milestones (invite your team, add an integration, try this feature, share with others, and more).

To make this all possible, we rarely bought external tooling. Our entire customer org (sales, support, CS) worked off of:

  • Internal built CRM
  • Zendesk
  • Slack

On the product side, we were similarly lean. We did not have any of the popular product analytics or other tools that teams use today. Everything was in-house. Even very early on, we always had a decent amount of product analytics built right into our internal admin interface (enough to have a sense of what was going on without risking data privacy or security)

Support: Driving engagement and Customer Success Qualified Leads

It is also important to note here that support was tied directly into this engagement process. We used Zendesk for support and built an app that presented customer information from our in-house CRM directly into the Zendesk interface.

This made it so any agent helping a customer had quick visibility into the company, the company size, the number of interactions we had with the customer, and if they had attended a demo before (as well as other general account information and a link to click into their full CRM record).

If someone on a free trial came in asking questions on how to use the product, we would use that opportunity as an opening to jump on a call. We would answer their question—but also wanted to understand their broader context.

  • What is the problem they are looking to solve?
  • Would they be open to a follow up so we can walk through how to best make use of the tool to solve those challenges?

Our team was trained to identify teams we hadn’t engaged with through support and proactively offer time to talk through this channel as well. Similarly to the automated messages, positive responses would be scheduled with our sales team for consultative sessions and to scope out an opportunity.

Pricing and packaging: Monetizing high-value prospects

Our pricing and packaging was relatively straightforward. We offered three tiers: Premium, Enterprise, and Enterprise+. This pricing model led high-value prospects to naturally gravitate towards our Enterprise or Enterprise+ pricing plans.

The product functionality on Premium and Enterprise were actually identical. The difference was in how you paid for users.

  • On Premium, you paid for everyone that had a login to the account. It didn’t matter what they did. If they logged in, they needed a paid license.
  • On Enterprise, you only paid for “workspace owners” and “contributors” which were effectively the users with “write” access in the account. They could create features, define strategy, and more. You had unlimited “reviewers” and “viewers,” these were effectively read-only users with the exception that they both could create reports and Reviewers could leave comments and utilize the internal task management system to complete auxiliary work (”Review this feature definition and leave feedback in a comment” type work).

This led to a natural flow where customers could start on Premium but quickly were better off on Enterprise as the team grew and they would benefit from the unlimited free Reviewer and Viewer users.

Enterprise+ had advanced (complex) functionality primarily targeted at the needs of larger organizations. It also had our “concierge service,” which we leaned into heavily as a large value driver for the significant Enterprise+ per-user cost.

I think it’s worth noting here that we did not hide pricing. The Enterprise+ pricing was always visible on the website. This allowed customers to self-serve to our highest paid plan if they wanted to.

I’ve seen the following scenario play out a lot in companies that hide Enterprise pricing:

  1. Enterprise requires “contact sales.”
  2. Sales “closes” hyper-transactional “deals” for customers that already self-evaluated and are being forced to talk to sales in order to sign up.
  3. Sales leadership debates how to appropriately compensate for these deals—you’re effectively injecting sales (and commissions) into what would have been self-service revenue.

Most of our Enterprise+ deals were sales-assisted; the plan inherently attracted the type of buyer who wanted a more full-service buying process. But we still had plenty of folks who would sign up with a credit card for two to five paid Enterprise+ licenses—why get in the way of that?

When we initially launched Enterprise+, almost any 1,000+ employee company was directed to Enterprise+ as the best fit due to the onboarding support through concierge. We also tied procurement processes to Enterprise+ (i.e., if you need security/legal reviews, you need to be on Enterprise+).

I will point out that there was no minimum commitment for Enterprise+. We did, however, scale back the “concierge” offering for smaller teams.

  • Teams with 20+ Enterprise+ users would get a full project plan defined for their rollout.
  • Teams with less would generally be a more transactional onboarding, and realistically that was all they needed due to the smaller size of the team.

Super important point here.

When we launched Enterprise+, the primary “carrot” was the concierge service. The other “features” were fairly minor. It was a long time before anyone actually signed up for Enterprise+ for a single feature. They almost all signed up because access to the concierge support was most aligned with their usage needs—it had the most overall value.

Sales: Sales-assisted, not sales-led

The purpose of sales was to be consultative. We worked off an inbound motion. This was true across all segments, as even our seven-figure Fortune 500 logos were low cost acquisition.

  • We assisted in consultative enablement during the trial.
  • We went through standard sales motions around identifying pain, helping show how Aha! could solve the pain, driving consensus within the organization, and navigating through procurement to a purchase.

In my opinion, this was a great early version, but there were things that I felt we missed on as the organization started to scale. As we started to work through the adoption curve, net-new deals began to slow down and growth started to come more and more from expansion in existing accounts. Some things I would recommend for companies in similar situations include:

  • Starting to build out an outbound motion to continue to drive net-new deals and chase after the late majority/laggards in the adoption curve.
  • Spinning up an account-based marketing function and a key/strategic accounts team to leverage our existing very large Fortune 500 deployments to chase down the rest of the Fortune 500.
  • Introducing a strong account management/upsell/cross-sell motion. As we launched new product offerings, we struggled to drive adoption because nobody truly “owned” chasing down product cross-selling and horizontal expansion.

We called the sales-assist team “customer success” for the first six years. The role wasn’t the same as what everyone knows as Customer Success now; that more traditional CS function later became our “product concierge” team.

The “customer success” title changed into “product success” around mid-2022. The profile we hired for was very different from a traditional sales rep—we looked for prior product management experience, not prior sales experience. The idea was that folks who grew up in product management would be naturally consultative with our target customers.

We then trained folks on how to run inbound sales cycles through a very well built-out (and lengthy) new hire onboarding process. Onboarding took six months. This included weekly activities for the first three months including:

  • Doing a series of internal mock demos
  • Graduating to doing demos to startup customers with a senior team member shadowing
  • Then doing demos by yourself
  • Finally progressing to being approved for larger and larger companies
  • A multi-part sales negotiation training covering how to navigate pricing and procurement discussions

Compensation in these sales-assisted motions is tricky to get right. Many folks, Aha! included, opt to get rid of quotas and reward by MBO or profit sharing bonuses. This has the benefit of ensuring the focus is on customer value and not the sales team’s agenda. While it can work well for an inbound motion, it makes it especially challenging to go outbound for either new or cross-sell opportunities.

Closing advice: Product-led sales is highly consultative

Your users don’t need to talk to sales. They are encouraged to sign themselves up and get started on their own.

As such, the sales motion needs to be viewed differently from a traditional sales-led environment where sales has control over it and how a potential customer engages the product.

You need to identify the moments where it makes the most sense that your customer may want help—and then offer them help. For example, when they:

  • Reach out through support.
  • Hit key activation milestones.
  • Hit usage or adoption problems.

Offer help and demonstrate value, then use those moments to also do simple discovery to understand more about what’s going on within the account.

When it’s clear to the customer that the person helping them can provide real value, they’ll be happy to engage further and partner with you in getting to mutual success.

Kyle Poyar

Partner at OpenView

Kyle helps OpenView’s portfolio companies accelerate top-line growth through segmentation, value proposition, packaging & pricing, customer insights, channel partner programs, new market entry and go-to-market strategy.