Do not sign a contract with Snowflake
Fast forward to now, we need to do our roll-over contract for our unused credits, which due to covid, we have over 90% unused credits because we had to prioritize other projects. Rep reaches out and informs us that we need to sign a new contract for $1k min. to roll-over our 9k credits and we would lose the 15% discount on the unused credits. Losing the discount is one thing, but having to purchase more just to keep what we have purchased was not at all how this roll-over process was portrayed at signing. The rep then said in fact there is a worse policy for newer customers where unused credits will only roll-over if you renew at the same price or greater only. I should count myself lucky that they had the decency to enforce this policy rather than their other arbitrary policy that is not mentioned anywhere.
If you are considering contracting with them and they are promising all these great things about discounts and roll-over, don't do it. I guess since their IPO, they no longer care about their smaller customers. There has been some chatter on HN about how Snowflake is worth so much, well...here you go.
43 comments
[ 4.4 ms ] story [ 94.5 ms ] threadPRICING: WHY PAY FOR WHAT YOU DON’T USE?
PAY FOR THE COMPUTE AND STORAGE YOU ACTUALLY USE.
I found that pretty funny given the problem you're running in to.
[0] https://www.snowflake.com/pricing/
It sounds like the OP wanted to get 15% discount, which required them to prepay for 10,000 usage credits that expire after a year.
It's not Snowflake fault if you didn't use the prepaid amount that allowed OP to gain the 15% discount.
Only prepay for things you know you'll entirely use
We purchase because without contract, you can't access their support engineer which we thought we would need but turned out not needed at all (also, I am starting to doubt if the support engineer part is even true, you can probably submit a ticket anyway).15% is not a significant enough saving to sacrifice the flexibility, given AWS can offer like 75% off at reserve. I wrote this post so others who may be considering it should know their rep may not be transparent about everything or might not be able to live up to their promises. I feel like for their long term, this is counter productive for their business strategy, shrug.
Edit to add that for those who don't believe the sales process was as misleading as I portrayed, just look at their investor earnings release from today! They really try to paint a picture that it is trivial to rollover your credits beyond your contract term and you wouldn't be anything you don't want to buy/need/use. I mean gotta laugh considering their newest policy is you have to buy new contracts at the same or greater price point as last year to rollover.
"Product revenue is a key metric for us because we recognize revenue based on platform consumption, which is inherently variable at our customers’ discretion, and not based on the amount and duration of contract terms. Product revenue includes compute, storage, and data transfer resources, which are consumed by customers on our platform as a single, integrated offering. Customers have the flexibility to consume more than their contracted capacity during the contract term and may have the ability to roll over unused capacity to future periods, generally on the purchase of additional capacity at renewal. Our consumption-based business model distinguishes us from subscription-based software companies that generally recognize revenue ratably over the contract term and may not permit rollover. Because customers have flexibility in the timing of their consumption, which can exceed their contracted capacity or extend beyond the original contract term in many cases, the amount of product revenue recognized in a given period is an important indicator of customer satisfaction and the value derived from our platform. Product revenue excludes our professional services and other revenue"
https://investors.snowflake.com/news/news-details/2020/Snowf...
What I want to point out is that the last clause does imply that some people at some point could roll over without purchasing additional capacity, so it may be that the policy of min. new purchase was made after we signed, or the rep didn't disclose the policy, or whatever. All this is to say their whole roll over policy is obviously in flux so you are at their whim even if it sounds great. The rep (I guess to convince me that the min. policy is not that bad) said newer customer are in a different bucket where their roll over can only occur by signing another purchase at the same price or higher (so if we signed later, we would have to pay 10K more to retain the 9k and so on). Hopefully these newer customers were told this or were savvier than me and got it in writing in their contracts. If you are interested in the exact text of the contract where roll over was mentioned, I posted it in a reply somewhere.
2. We signed a contract for a few reasons and the discount wasn't even the main one. We always prefer the flexibility but Snowflake promises engineering support only for those on contract, though we ended up not even needing this as we solved problems that came up ourselves and the product is pretty self explanatory. Again why I say go on demand. The discount offered for contracts is really small, much smaller than AWS for example where it's like 70% off for 3 years etc. AWS is super clear that those expire in 3 years but the discount is huge to make up for it. In Snowflake's case, I don't see the upside since roll-over is really a pain and the discount is tiny. I don't have any experience with the support to say whether having a contract is worth it for this reason, but I suspect you can probably go through generic support or solve your own issues without too many problems.
3. I have no problems so far with Snowflake as a product by itself which is why I still say if you want to use it, I just recommend doing it on demand. Especially because a lot of smaller orgs are probably drawn to their positioning of being more flexible and only pay for what you use computing, they clearly are trying to figure out how to maximize their top line and changing policies around so you are probably better off on demand.
And they'll let you roll over $9000 worth of unused credits by purchasing just $1000 new ones? This actually sounds like a pretty good deal.
I think your problem is that you purchased more than you needed via a contract you didn't understand.
You pre-paid for $10k of usage, with an agreement to roll-over unused credits into next year's contract. The plain definition of roll-over includes the fact that you'd have an active future account. Otherwise, they'd just say "prepay credits never expire". Imagine trying to use roll-over minutes on a phone plan where you cancelled the phone.
$1k/yr seems like a very low minimum which will serve as basis to roll your $9k of existing credits into.
Sounds to me like you just didn't think about or budget for this. Doesn't sound like any misrepresentation to me.
My post is definitely a lesson learned and shared to others who are small and may be interested in getting better engineering support from Snowflake (a benefit of signing up that was the main reason for us that we ended up not needing) by the contract route to question their sales rep in depth and get it in the contract itself, and honestly, should just stay on demand.
Obviously OP made a mistake here, and it seems that they're admitting that, but if what they said was true, this company was being deceptive about the contract.
Based on their website[1], you can have an account with pay as you go. There is no reason to assume that if I change to a month to month agreement, I would have to create a new account. Why shouldn't the rollover minutes stay with the account? OP paid for it already.
To go back to the AT&T analogy, if they offered a prepaid yearly contract with rollover minutes, and I lose those minutes because I switched to month to month, I would be pretty angry.
[1] https://www.snowflake.com/pricing/
With churn being of the metrics that affects investors dynamic and thus valuation the most, I understand their desire to eliminate these situations.
Enter negotiations and at the end of the day, vote with your dollars.
I've found a trend where SaaS vendors will only sell licenses in bundles that are either way less or way more than anyone needs, pushing to start the relationship with you overprovisioned.
Then at renewal time there's pressure to add more licenses and you're still not using all of the ones you have.
Try buying a database sometime.
Every single last one of them sells to you like they're IBM. "Spend six-figures-plus/year or don't even talk to me."
Hardly a surprise at this point.
Or am I missing something here.
I've been thinking about trying out snowflake, but I feel like for most companies, if you have someone that can design a data warehouse schema, you can probably manage fine. Most small businesses just need to pre-aggregate their metrics and feed them into a DW/OLAP system. Then you can just have a software engineer build an API and some visualisations around the metrics.
From personal experience working on Fortune 500 projects, the challenge is actually defining the metrics, hierarchies and dimensions. You have to understand the business well, and also be technical to understand how it translates into a data warehouse.
I just started the coursera specialization on data warehousing [1]. While I do have some exposure to dimensional models and hierarchies, I think this will be an awesome experience to build a data warehouse myself.
[1] https://www.coursera.org/specializations/data-warehousing
I learned this lesson when making a $XM multi-year contract with AWS. They said "customer will be signed up for enterprise support", which we read as "customer gets enterprise support for free". Then we started getting bills for enterprise support ($1K/month). The contract said that, but was a bit vague; it was totally on us to ask for clarification up front.
"Rollover of Capacity. If Customer purchases additional capacity under a separate order form before the end of the Subscription Term hereunder, any unconsumed Capacity will roll over into the immediately succeeding subscription term of such order form. Otherwise, purchased Capacity expires and becomes void automatically at the end of the Subscription Term."
What is vague about that?
Add the fact that the contract was just 1 page, it seems they signed without reading. Basing their decision only on the words of the smooth talking sales rep.
They would have had my sympathy if the clause was buried within many pages of legalese.
But 1 page? Come on.
My personal experience has been that sometimes I get really upset about perceived fraud, only to discover later on that I'd missed something in the fine print, or misunderstood something in the relevant laws.
If you're confident that you've been defrauded, you might consider getting in touch with your local attorney general (or whatever the appropriate government office is where you work).
Salesmen are full of shit and everybody knows it. The contract you sign is what matters. Read it first.
We are currently rolling on pay as you go with them, and have successfully worked out what deals they'll offer when so we can sign if our traffic makes it make sense for that kind of commitment. We keep making our system more efficient and pushing that day away.
There are a few things that have less than impressed me with Snowflake, but having worked a bit with some of their competition I'm not bothered.
Their sales team behaves in a way that I'd call predatory and pushy. Their account managers were unhelpful to the point of being opaque about how much "credits" we had, and just how that corresponded to actual value.
The whole experience, coupled with what I'd call an otherwise uninspiring product was unpleasant enough to make me want to never deal with them again.