Nov 19, 2019

Thoughts on pricing for MailCoach (standalone app + laravel package)

Spatie is about to release a new product named MailCoach. It's a self-hosted app to send newsletter: it takes your email template, and sends it to all your subscribers via Amazon SES or Mailgun. In this category, Sendy is probably the oldest and most known software out there.

The point of self-hosting this type of app instead of using Mailchimp is to own the software and send your newsletter for much cheaper.

Today, Freek announced that they're going to release the pricing model soon and opened a conversation about what it could be. It got me thinking, and unfortunately, I couldn't fit my thought in 280 characters.

First, it's important to understand that MailCoach will be 2 main things: a full-fledged app and a Laravel package.

Target audience

If I had to describe a persona for who's going to buy this, I'd say: it's me. ?‍♂️

I hate subscribtions and I don't mind spending some time maintaining a technical stack. I considered many times buying Sendy, but since don't have a newsletter, I never did.

But MailCoach is also a Laravel package, and I've bought packages before: Laravel Nova and Laravel Spark.

Full-fledged app or simple package

Which one should cost more? My first thought was that the app has more value, because the app includes the package. But after thinking it through, I'm convinced there is more value in the package.

I can see my self reusing this package for many projects. It will become a tool I use for my Laravel projects that's why being able to use composer to install or update it is very important. I remember when Nova was installed with a Zip ball. It was painful.

On the other hand, I think the app is something you install once, and use it for your newsletter.

Buy once but come back and buy again

The main advantage of self-hosted software is that you own the software. The pricing is not going to change and nobody can decide which on of your subcriber gets to see your content (newsletter). Think about what happened recently with Mailchimp, Patreon, Medium, YouTube and so on. With a self-hosted app, you're in control.

The next big advantage, is that you're not required to get a subscription. As a buyer it's great, but for Spatie, it might not be. MailCoach will require some maintenance (Laravel upgrade, API changes), there will most likely be some other features to add and for sure, there will be bugs to fix. So we need a way to incentive maintenance, and it's hard if you pay only once.

I have seen primarily two ways to price non-SaaS software:

  • The classic way: get upgrades included until next major version
  • The Sketch way: get one year of upgrade, regardless of version numbers

Historically, everything worked like that. If you buy Alfred 3 for instance, you'll get all upgrades until Alfred 4. This forces the editor to find way to bundle big things into one major version, like a redesign. They will hold on feature, to make sure they ship in the next major, not in a minor. Here, major version isn't used in the semver sense, it's a marketing major version.

Recenlty, Sketch came along with an better pricing strategy. The published an excellent post, so I'm not going into the details but you get:

  • on year of upgrade, regardless of the versioning numbers
  • forever licence on the latest version of this year of updates
  • perpetual bug fixes for this latest version

I think it's a great idea for a package pricing but I'm not sure it's technically feasable. I have never setup private composer repository.

Per project license

Another way to make you pay again, is to sell a license per project. It makes sense for agencies, because buying a license for each of their client is only fair but it's very off-putting for solo dev (people starting many projects but not completing any).

Also, it's pratically impossible to enforce.

My proposition

Here is how I think I would price MailCoach if I did it, or at least, how I'd like to see it priced as a potential buyer.

Price Details
Full app only $59 One year of updates included. It can be upgraded via zip and is totally unrelated to the package life cycle. This is Sendy's price, so I think this makes it a no-brainer decision for potential buyers. The price can always be raised later.
Package only $99 Available via composer, unlimited project and some upgrades included. Maybe one year, maybe until next major, I can't make up my mind.
Full app + Package $99 Yes, it's the same price. I believe this will drive more people to 99 euros, even if they only need the app.