How horribly condescending and wrong. Any company that lets their customers go from huge fan to hater in a week has a major bug. The important question is why did their product turn a fan into a hater, and how can they prevent it?
Heroku should almost certainly have user defined cut off points. They should require every new user to set a maximum monthly bill to something they can afford (or "unlimited").
I did exactly that for a similar type of service I worked on. One of the biggest anxieties customers had was that they'd get a massive unexpected bill, just like this guy did.
Heroku's best move would be to cut his bill in half and institute a cut-off feature. Every service like it should follow suit.
It reminds me of that Albert Brooks movie where he goes to Vegas with his wife and she gambles away all of their life savings. He tries to convince the casinos to give him a refund because of the good publicity it would create. The casino replies with something like "If we give you a refund, everyone will come in asking for a refund and then where would they be?"
It's an interesting line to walk. If they give the poster a refund and he posts goodwill posts about it on Hacker News, Twitter, etc. Then, next thing you know, every customer who isn't using all of their capacity is asking for refunds and if they don't give them, then the PR backlash will be even worse (think AT&T and the free micro cells they're giving to some of their best customers but not others).
I'm guessing the majority of their profits come from people who don't use their full metered capacity -- in the same way giftcard profits come from people who never redeem them. Of course a google-like model that provides traffic-based metering would be best.
> I'm guessing the majority of their profits come from people who don't use their full metered capacity
For Herokus sake I hope that that is not the case.
Typically a service like this is 'oversubscribed' to about 10 to 15%, it's like pre-paying for your parking meter, you want to pay a little bit too much because of the uncertainty in when you'll get back to the meter but not so much that you'd be cheaper off parking somewhere for a flat rate fee.
If they really do make the majority of their money on unused instances then they're setting themselves up for trouble in the longer term.
I highly doubt they did not think that one through.
>How horribly condescending and wrong. Any company that lets their customers go from huge fan to hater in a week has a major bug. The important question is why did their product turn a fan into a hater, and how can they prevent it?
Spoken like someone who has never had a real customer. There will always be people who expect instant response to support tickets. There will always be people who expect you to fix their webapp, or their apache config when you are selling them a 'no support' plan. People can be unreasonable. If you have a reasonable number of customers, some of them /will/ be unhappy, no matter how good your service actually is.
Now, for me, I avoid some of these problems by making people pre-pay. If you don't, I just don't turn up your server. If it's time for renewal, and you don't want to pre-pay for the next period, I shut you off. There's no way for you to get an unexpected bill, and if it turns out my service doesn't match your expectations, I offer you a refund if you are willing to leave. (You'd be surprised the number of people who don't take the refund and want to stay even after complaining very loudly and publicly.)
For my target market (companies with small revenues and hobbyists) this is absolutely the best way to do it.
On the other hand, there are cases where some businesses would prefer to just pay through the nose to survive the slashdotting or what have you, and that's where this pay as you go model comes in. The problem is that when you have expectations of a 'pre paid' customer but end up buying a 'pay as you go' service.
>Spoken like someone who has never had a real customer.
I've had real customers and you do what you can to keep the loyal ones and make them happy, even if that means cutting your profits temporarily. It's not just being nice, it's smart business. If he finds another hosting company and starts recommending them, that's way more money lost than the $200 they could have knocked off the $1300 bill.
Eh, for me, I am /very careful/ to treat the customers who are easy to deal with (e.g. those who try to solve problems themselves, and those who don't complain) better or at least as well as customers who complain.
My policy is that if I give one person a refund/credit (without them leaving... anyone can get the last month back for any reason if they want to leave, I mean at least once.) I give all customers who experienced the same problem the same refund or credit. A few months back when I was hit with a DoS and was down 8-10 hours? I gave everyone a free month, not just the complainers. Fourteen grand that DoS cost me.
The thing is, your complainers are expensive customers. On a low margin service, it does not take very many "fix my apache config" complaints before a customer becomes unprofitable. I mean, you want some complainers; they act as the canary in the coal mine. But keep in mind that the real money is in the silent masses who silently leave when they feel wronged.
I mean, focusing on higher maintenance customers is also a valid business model... but you need to charge more, because high maintenance customers are more expensive to deal with. I want to be clear that I am only talking about (and I only know about) lower-margin services where the actual cost of providing the service is the determining factor in price. There are markets where those rules don't apply, and in those markets, nothing I'm saying makes any sense at all (and your advice is probably pretty good... not that I'd know.)
> Heroku should almost certainly have user defined cut off points. They should require every new user to set a maximum monthly bill to something they can afford (or "unlimited").
And then what? They shut you off? That would go over just as well! Here's a thought: understand what you sign up for and take some responsibility for your actions.
> If you don't, we're haggling over the price, not over the principle.
Sure, haggle away. I see no problem with this. I don't see the need for Heroku (or anyone for that matter) to support a user's desire to haggle. I do think, however, that a warning should be given if your usage surges suddenly so that you can react appropriately.
Any company that lets their customers go from huge fan to hater in a week has a major bug.
"I was the one who screwed up" doesn't like hating to me.
It's nice when you can cushion the user from the bad consequences of their own decisions, but you can't always do that. They may have been able to do that in this instance, but it's hard to know from the outside.
This is the Ruby versus Java debate: should we treat professional programmers like they know what they're doing, or should we straightjacket them?
To which I answer: Yes. It is reasonable to run a Enterprise-oriented cloud scaling company which second-guesses your customers' decisions at every point. It is also reasonable to run an Enterprise-oriented cloud scaling company where a professional engineer engaged in capacity planning clicking OK to an estimate presented in 60 pt Arial is assumed to know what they're doing.
I don't agree. It's not an issue of straight jacketing programmers. It's an issue of reminding a user they are incurring an enormous bill for no reason. A simple "Hi, we see you're using X widgets but your traffic would allow you to reduce this to Y widgets. If you'd like to do that, here's a link. If not just ignore this email." That would solve the problem with very little effort. It would keep people forgetting and having a heart attack, getting pissed and leaving. It really doesn't matter if it is the customer's fault if it causes them to leave with a bad taste in their mouth.
Except that Heroku is very much targeting their brand for the do-it-yourself amateur projects (i.e. the handholding crowd) with their "starts-at-free" pricing, cutesy naming for all their a la carte features, and full-service VPS setup. At best, it's inconsistent and/or careless. At worst, this was their plan all along.
Hopefully the folks at Heroku see this comment as the idea for a cutoff rate is really good. I'm not sure cutting the bill in half is necessary, but describing the real costs of their service and potentially allow paying only that cost or at the very least a payment plan seems reasonable.
They may have every right to hold the hard line, but a little compassion would probably pay off better in the long run. Some business' bottom line is profit alone, other's are in it to solve problems, and, keeping an eye on money, and can make enough profit to keep living the dream.
I think the best case is to ask for the discount. Start eating your hat if they don't. Why? Because it is your fault, and it would have been icing to get a break this time. But it's not their prerogative to give out free service, or to take the mass of requests for it if they started doing that.
The user sets up those limits, it cuts costs because they don't need techs to set it up. But the client shoulders the responsibility too. They last thing their company needs is to hire people to handle personal requests like funerals or "i forgots" which would only add more to their overhead. They above comment was perfectly honest with them and not at all condescending.
In terms of "wrong" ? You get what you paid for. Not every business model can include white glove service with freebies and "We understand".
Heroku should almost certainly have user defined cut off points. They should require every new user to set a maximum monthly bill to something they can afford (or "unlimited").
I did exactly that for a similar type of service I worked on. One of the biggest anxieties customers had was that they'd get a massive unexpected bill, just like this guy did.
Heroku's best move would be to cut his bill in half and institute a cut-off feature. Every service like it should follow suit.