Snowflake Packaging & Pricing (part 2)

I think it’s a reasonable guess that most enterprise software companies in the IaaS, PaaS, and SaaS space have had a conversation about consumption pricing in the last 2 years. Despite being all the rage, it’s clearly a fit for Snowflake’s business model and this post will explore how it works.

The definition of consumption pricing is that you pay for what you consume.

In an example from the old days of cell phone plans, customers might buy a block of minutes for a monthly fee and if you went over you were charged. Customers hated this in part because you couldn’t roll over minutes if some were underused. The industry changed and eventually roll-over plans became the norm as customers could consume what they were charged for. So consumption gets down to fairness and predictability.

The same thing from the cell phone minutes era is happening in enterprise software. Companies don’t want to feel overcharged on infrastructure capacity they are not using and so the consumption model is having its moment.

But B2B purchasing can be different than a consumer experience so let’s talk about that first.

The biggest advantage of the B2B space vs. B2C is that you can negotiate! Try negotiating the price of 100 vs. 5 Big Macs and see how that goes. So a company like Snowflake designs its pricing model to account for negotiated sales. There are two main ways:

  • Pre-buy blocks of capacity and get your discount upfront (e.g. buy 10 TB and get a 5% discount on the list price)
  • Get charged in arrears (e.g. how your utility bill is for last months consumption)

In this model customers can consume the same amount of capacity, but if they’re willing to give Snowflake more predictability (i.e. cash upfront) then Snowflake will give them a better price. Everybody wins. In fact Snowflake is very transparent about this fact.

Source: Snowflake website

Pre-purchasing capacity ($25 TB/month) vs. on demand ($46 TB/month) gives you a 46% list price discount. And by the way this doesn’t account for the fact that if you purchase a higher volume you’re likely looking at even more discounting.

As a pricing strategist one of the more curious pieces of the consumption model is how to treat costs. For Snowflake, they run their infrastructure on the big cloud providers AWS, GCP, and Azure. But all locations are not equal. A quick look at their pricing calculator shows that AWS-EU (Frankfurt) is $45 TB/month in the on-demand flat fee model or $2.70 per Snowflake credit on the Standard edition.

If the instance geography changes to AWS – US East (Ohio) though, the on-demand flat fee price drops by $5.

What’s happening here is that Snowflake is passing along costs to the customers as the US infrastructure is cheaper to operate than the EU infrastructure. Most importantly, though, is that Snowflake is HIGHLY DEPENDENT on AWS’ pricing decisions. While the two are clearly co-selling a similar vision, there is also a competitive threat.

Credits vs. Flat Fees

As you can see below there’s not a readily apparently logic right off the bat as to why credit prices differ from flat fee prices but clearly there are geographic peculiarities. Take Frankfurt – the lowest non-US flat fee price and yet it’s Business Critical edition credit price is higher than that of Singapore, Mumbai, and Canada.

This is one of the toughest parts to get right in a consumption model. The phasing of costs and what gets passed on to a customer can get quite complicated and may not be easily understandable for customers.

Leave a comment