I love pricing and packaging

I love pricing and packaging

Ask any of the early devs from Privy if they like to work on pricing efforts...they may punch you in the face. I swear.

Ask me, and I'll tell you I absolutely love it.

It took me a while to understand the real power in pricing and packaging. But in my tenure running Privy, we made at least 5-10 big changes to packaging over the years.

Each time, they drove massive growth for us. Yes - we had pretty serious top of funnel growth alongside these changes, but in the entire history of the company, it was the packaging updates, driven through product and engineering, that drove the biggest lifts in company revenue.

Today I'm going to walk through the full evolution of our packaging history, and detail some of my personal learnings both about how to win with packaging, but also how to make sure the internal process is successful as well.

So let's start with day zero.

Remember, Privy actually started as a completely free popup tool for Shopify back in 2015.

We literally only had the free plan to start. That helped us validate a few things around finding a target market, and acquiring our first 1,000 customers for my shopify app through forums by leading with help.

As the amount of engaged free users on the platform grew, I was deeply embedded in customer support.

We quickly realized the need for building out more advanced features. And we arrived at our first set of paid plans by building new features that multiple customers requested.

And that's how we launched the "micro" plan for $9 per month. Comical thinking back. But this was really to validate a simple thesis.

If we build the features that 5-10 customers ask for, and keep them on the paid micro plan, will they move from free to paid?

Yes ✅.

This was fantastic for guaranteeing ROI on engineering time, which back then was critical for us because we were operating in bootstrap mode.

This was the perfect way to jump start the freemium engine. Offer a ton of value on free, but build and move the slightly more advanced stuff to paid plans.

The only issue? Damn was it hard to  grow revenues at just $9 per month. If you're a simple utility app, this can be a smart, simple move.

Had we kept Privy a popup app, flat pricing based on features would have been the right path.

But I was trying to build a full marketing platform.

So we grandfathered the micro plan customers at their level, but hid that plan for new upgrades.

And we rolled out two additional, feature based plans. The plus plan at $19 per month, and the commerce plan at $49 per month.

We appropriately staged the advanced features across free, plus and commerce, and had another amazing year of growth in 2016 as a result.

At that time, we started fielding some larger brands, asking for more sophisticated conversion tools. Specifically things like google analytics integrations, custom javascript input and AB testing forms.

This felt like another good opportunity for an "advanced feature plan". So we spun up the "growth plan" and put all the new stuff in there.

Honestly, when we first put the growth plan in our dashboard, we talked about it as the "decoy" plan. I genuinely didn't expect people to buy it. But they did. Lots of them. It was amazing.

For a decoy plan, it was clear that the price tag wasn't high enough. So we bumped the growth plan to $299, and people kept buying.

And we realized that the plus and commerce plans ($19 and $49 respectively), were also priced too low.

So we bumped plus to $24 and Commerce to $49.

This set of feature based plans, grandfathering in the initial cohort of micro customers, took us from $0 to $4M in ARR.

Times were great.

Legacy plans from our featured based packaging. This is when Privy was a popup only.

The challenge with feature based plans.

There were some pretty big flaws with the feature based model, though. Despite naming plans according to customer personas, we still had super small shopify stores that would look at the plan options and think "wow if I just upgrade to the growth plan at $299 I can start AB testing my store". Problem was that if the shop had no traffic, google analytics or AB testing, wouldn't do anything for them. So as fast as those small stores upgraded and showed willingness to pay $299 for Privy, they'd downgrade the next month, with a bad taste in their month, and we might lose them forever.

But I did love feature based because it showed ROI on dev time, and was also kind of easy to upgrade customers who made feature requests.

But churn started to pile up over time, and as we spoke with customers, we realized that the value they would get out of Privy wasn't really tied to the features they were buying.

Before we built email and SMS, the value was really tied to how much traffic they had on their store.

So this insight kicked off one of our biggest pricing efforts at the time. We were going to shift away from feature based plans, to value (traffic based plans).

Our pivot into value based pricing 📈.

In some respects, shifting to traffic based pricing absolutely crushed it for us. But internally on the collaboration between product and engineering, we didn't do a great job. I learned a ton on that effort which I'll share in the lessons section below.

But the actual roll out crushed it.

We prepped but communicating with customers well ahead of the change. We did that through emails from marketing. A video of me explaining the change, speaking to all the new features they'd be getting as a result, and why.

And we also made a huge campaign to reach out via our direct sales model to give them a chance ahead of the change, to chat with customers, get them comfortable, work on some deals.

We even layered in a few webinars people could join to better understand the change and new features.

Essentially, we were removing the feature based plans, and giving every one all the popup features, even the free plan. We then capped free at a certain amount of traffic, which felt generous.

And then created buckets of traffic based pricing tiers.

Here's the GTM schedule of events leading up to the change.

Packaging changes are a company wide effort. Support, Marketing, Sales. Everyone needs to be involved to make the rollout successful. 

It was one of the most exciting launches we ever did. I remember refreshing our BI dashboard that day and just smiling.

In one a single launch, we drove $58K of Net MRR growth over a 2-3 day period. Crazy.

In the chart below, notice that both Q2 and Q3 are HUGE. This is one of the reasons I love pricing. If the GTM motion is aligned, its the perfect excuse for sales to start outreach early and offer value to customers. Customers get a better understand of the change, and are offered slight deals for committing early. So Q2, 60 days prior to our pricing launch, was also a MASSIVE quarter for us.

And then you can see Q3 was just an absolute monster. Driven by the price change in July (normally a very slow month).

The price change happened in Q3, but notice how strong Q2 was? That's because of a dedicated pricing campaign we rolled out early through sales and marketing and success to get ahead of the upcoming changes. 

Shifting from Popup value pricing to Email, then SMS

We got over the internal hiccups on the shift to value based pricing. And then it wasn't long before we started to see the market shifting in front of us.

It was becoming clear that brands wanted an all in one for popup and messaging. They didn't want a standalone popup tool.

So as our email offering became stronger, and more scalable, we started to treat our popup-only plans like we did our micro plan, making it legacy, and moving it to "sales convo or support convo only".

We wanted to be an an all-in-one messaging company and our packaging needed to reflect that.

So again, we rallied internally and came up with new combined packages that would rip off the popup-only bandaid and put Privy whole hog into messaging. We wanted new installs to see that from day one, and know they didn't need Privy + Klaviyo.

So we again shifted value based pricing away from traffic, and landed on mailable contacts as the value metric.

That worked well, again. And over time, as we got more confident in our SMS offering, we layered in an email+SMS all in one plan.

So we ended up with a free plan, an email scaling plan (contacts), and a email+SMS scaling plan (contacts).

Why I love price bumps.

Over 5 or so major price change initiatives, a pattern emerged. You would lose some customers, absolutely. But for the most part, you'd make a shit ton more money.

As the company grows, it gets more cumbersome to use product and engineering to increase pricing, or evolve packaging.

But each time, it drove minimum of $500K in value for us. Most times, much much more.

And the best part is that it does not require more headcount to achieve these. So its essentially straight to the bottom line.

No doubt, with a small team, you are making significant tradeoffs. In order to adjust pricing models, you need product and significant engineering time. Which means you're not innovating on new features.

I get that. And it's important to strike a balance.

But also remember that after every 12 months of building new features, you've added significantly more value into the platform. So even if you don't need to completely shake up the packaging model, modest price increases, even just for new accounts, will drive profitable growth for your app.

As a founder, there are very few initiatives that can match that sort of ROI.

Other Lessons.

The number of packaging changes we had in my tenure mirrored our evolution from point solution (popup) to platform (messaging).

To a degree, we had no choice but to evolve packaging alongside rapid market changes. But I certainly learned a ton about packaging and pricing.

Here are a few other tidbits:

  • Over time, too much "grandfathering" of older plans can cause a ton of complexity in engineering land. This ads weight to the next set of features and price changes you want to execute on. And it's the kind of tech debt that GTM people never quite understad, and makes the next set of packaging changes significantly more heavy. Grandfather is a GREAT way to limit risk on price changes, and show new prices only to new shopify installs. So it's a conversation you need to have with engineering. You could start by gradfathering for a brief period of time, and if the new pricing proves successful with new cohorts, you could then go back and make a sweeping change to grandfathered customers.
  • Pricing efforts need a a single owner. I think it should be a highly capable and organized GTM owner. They need to be able to model out different scenarios, at different rates of churn assumptions. And they need to work closely with product and engineering. Ideally they involve engineering VERY early in the process before you get all excited about the model in isolation from understanding what is realistic from an execution perspective.
  • Pricing simplicity is critical. Self serve models are all about upgrade velocity. And that means that friction can slow you way down. In the 10 seconds a lead looks at your pricing page, or upgrade prompts inside their account, they need to be able to digest what the hell your packages mean. I'm also a fan of putting a pricing page on your core marketing website. It ended up being one of our most trafficked pages, and helps prospects digest features all at once.
  • Entry point matters, a lot. Expansion revenue and tiers is critical for SAAS growth and showing net retention of cohorts. So you definitely want to make sure that as a platform, you have fairly priced tier increments that shows that expansion, tied to value. But the entry price for your smallest customers, and what people see on pricing pages, needs to be attainable.
  • Support is a differentiator. People will upgrade for things like live chat, onboarding calls, and dedicated customer success. We saw that time ad time again.
  • For big packaging shifts, give customers plenty of lead time, and use sales and marketing to set up calls to get ahead of it. For small price bumps under the existing infrastructure, give 2 weeks or so but not much more. No need to elongate it.
  • My personal favorite models are a blend of free, feature and usage. I like a free plan, then plan A with certain features, that scales on a single usage metric, and plan B that has the rest of the features, and also scales on that same usage metric. That gives you plenty of cross sell opportunity and expansion revenue.
  • Don't underestimate the increase your support team will feel from the price changes. Make sure they're involved early, and understand whats happening, why. Worst thing that could happen is you make big changes, notify users, and support isn't armed with the specifics and an action plan for their team.
  • People hate pricing that's tied to revenue or traffic. It's hard to generate trust and alignment on reporting. I get it. So I'm glad we evolved our value metric to contacts for a ton of reasons. More contacts is a proxy for how much value they'd get out of privy, and yes, directly tied to revenue. But we never priced our messaging products on "a percent of revenue driven through privy". That's tough to pull off and merchants hate it for the most part. Exceptions could be if you actually handle transactions and money, like shopify, or gift cards etc.