The origin story
I built Shortkeys back in 2012 because I was obsessed with keyboard shortcuts and automation, and I was bummed that Chrome made it really hard to tell it “no no, listen Chrome, I want ctrl+h and ctrl+l to switch to previous/next tabs”. After about a day’s worth of development, Shortkeys let me do that.
Over the years since then, Shortkeys has grown and matured a lot. The Chrome extension has 80,000-100,000 weekly users (depending on when you check) and there’s a version for Firefox now as well. (Thanks to the power of webextensions, I also export Opera and MS Edge releases on the Github release page but I can’t vouch for how well they work).
I’ve never had much luck getting any tech blogs or news sites to pick it up, so this has all been slow, steady growth based on word of mouth and Google.
Shortkeys started with just the basics like scrolling and switching tabs, and it’s grown to have all kinds of crazy stuff like running bookmarklets and custom JS or searching your currently open tabs by title. It has 60 possible actions you can trigger with custom keyboard shortcuts. You can do some pretty crazy stuff with it.
All for free?
After 7 years of maintenance, I started to feel like maybe there’s some money I’m leaving on the table here. So I decided to see what happened if I started charging for it.
Paid Chrome extensions are rare. I’ve never stumbled upon one in the wild. I only found some when I googled “what are some paid Chrome extensions?” So it seemed like I’d be going against the grain here a bit which can annoy people, but I figured worst case everyone would flip out and my user count would plummet, and then I could always just go back to free and lose exactly zero dollars.
Luckily, Chrome Webstore makes it dead simple to charge money for an extension, so there’s no worry about sunk cost with setting up a payment system. As long as your Google Payments Center account has a Marchant profile set up (which basically just means you give it a business name/address and your bank account info), you edit the extension and choose which pricing tier you want to go with.
Tier 1 means that it costs $1.99 USD, and Google auto-converts that into the appropriate price for other denominations, as you can see. There’s a big pricing table here if you’re curious what all the tiers are.
$1.99 seemed like a reasonable place to start, so I just went with it, clicked submit and that was that.
(Interestingly, the docs seem to be lacking info on what this means for existing users. Do they immediately lose access to the extension until they pay? Or are they grandfathered in? If so, do they get free updates as well or do they need to pay to stay up to date? As far as I can tell, the answer is that existing users can keep using that version for free but are forced to pay in order to upgrade to versions released after monetizing. But it doesn’t seem to notify those users that there is a new version available. They would only see that by going to the extension page manually, so in theory there could be 80,000 users unknowingly using an older Shortkeys version without realizing there’s a paid upgrade available. That doesn’t seem ideal, and I can’t find any docs pages to back that up, so I’m still not 100% positive that’s the true answer.)
So how’s it going?
After 1 week of charging $1.99 for new installs, I have made a whopping $86.74.
This is actually a pleasant surprise. I was thinking I’d maybe be lucky to make $100 per month from it, but at this rate I’ll be making $300+ per month, and possibly more as time goes on if usage continues to climb as it has for the past 7 years. That’s a pretty nice little bonus for something that I enjoy maintaining and would have continued to do for free.
Traffic seems to have decreased a bit, but that’s really hard to say for sure since it’s only been a few days and the holidays do wacky things for traffic anyway.
So far I haven’t had anyone complain, and a few power users have reached out and said they were happy to have the chance to pay for it. For anyone that is unhappy with it, I’ll continue to post the releases on the Github release page for free.
All in all, I’m feeling pretty good about it, but we’ll see how things shake out after a few months.