Pricing Updates


Two friends of mine are updating books for two different publishers.

They are each doing a significant amount of rewriting. The books will have new SKUs and if people want the new books they'll have to buy them.

I've just updated my book A Swift Kickstart for the latest version of the language and the latest version of the tools. This was a significant update. I rewrote all of the existing prose. I replaced examples with better examples. I came up with new examples that took advantage of the changes to the language. This was a big update.

Through most of this update I wrestled with how much I would charge for the update.

In many ways this is a brand new book.

If this was a print book there'd be no question about it.

I wanted to be able to charge some nominal amount to people who owned the book already and charge full price to people who are buying it for the first time. I want to reward those people who have been with me for a while.

There's no way for me to do this.

I can give the update away for free to existing customers but I can't charge them less than I charge everyone else.

App developer friends advised that I charge everyone the full amount. I understand their point. This is a new book and many of my readers had said they would gladly pay again.

I blame it on my midwest upbringing but it didn't feel right.

Years ago I owned NetNewsWire. Brent gave free updates for so long that at one point I paid again. I felt I'd gotten so much more in value than I'd paid - so I bought it again.

I don't think people can do this for books bought on the iBookstore.

So I'm giving the Swift 2.0 update away for free to existing readers

What I've asked in return is that existing readers who enjoy the book do three things.

  • They post a review on iBooks.
  • They tweet or somehow mention the book.
  • They encourage a friend or a coworker to buy it.

So far I've had few takers. This experiment hasn't gone well for promoting my book.

I still think free upgrades is the right thing to do and I'd do it again.