blog

What it costs to run a software business in 2023

A rundown of Buttondown's software costs for the year.

What it costs to run a software business in 2023

I am a sucker for a good list of running costs, dating back to seeing Cushion's, back in 2015. I think it lends an earnest and unglamorous look as to what it really takes to a business in the way that "hustle porn"-type essays rarely do.

I've done a poor job of keeping my own such running cost document (though I'd like to do a better job!), but in lieu of a beautiful chart like Cushion's I'll try and offer something sloppier: a screenshot of my finances table!

All the costs.

(As context, Buttondown posts around low five figures of monthly revenue, so this is a pretty healthy margin.)

Some notes on these numbers:

  • My Stripe fees are a goose-egg thanks to Stripe offering a huge amount of free credits to alumni. This would otherwise be one of my largest costs.
  • Instead, my largest cost is Heroku, which is coincidentally the cost I'm least happy with. Buttondown does not serve enough traffic to warrant five hundred dollars a month; in fact, the lion's share of that money goes towards a Redis cluster and auto-scaling asynchronous queues. A goal of mine for later this quarter is to migrate onto a more modern, cheaper solution like Render — which I've napkin math'd out to be closer to $150/month.
  • Of the things I pay for that I'm least satisfied with regardless of cost, PagerDuty and StatusPage share the award. Neither of these are good products for my use case, and I deeply wish to migrate to Better Uptime. But the trap that you quickly run into is that $60/month is simply not an urgent enough level of cost to prioritize migration, and so I toil away using these subpar tools. (I'll switch off of them probably when I also switch off of Heroku.)
  • I spend a lot on sending emails. Sending emails is not free! I have three active ESPs — Postmark, Mailgun, and AWS — for various use cases, as well as a dormant ESP (Sendgrid) for failover's sake (it's currently on the free tier, as I only send through enough traffic to make sure the plumbing doesn't explode).

Beyond that, nothing much to report. There's a slew of things that cost somewhere between $5—$30/month for which I use the following heuristic: does this provide at least fifteen minutes' worth of value? If so, great. That's perhaps a low bar, but it's certainly a higher one than at big technical companies (where the bar might be "has someone used this tool in the past year? okay, we won't churn from our four-digit plan".)

Published on

February 9, 2023

Filed under

Written by

Justin Duke

Justin Duke is a software engineer, lover of words, and the creator of Buttondown.

No credit card required. Only pay for what you use. Cancel anytime.