Tag Archives: software

My new ‘Start your own software business’ training course

Things have been a little quiet on this blog as I have been busy on some new projects as well as continuing to work on PerfectTablePlan. I am announcing one of those new projects today.

Start your own software business

A two day intensive training course on how to create a profitable business selling your own software product

22/23 November 2013

Swindon, England

There is a lot more to running a software business than knowing how to program. The last 8 years of running my own software business have been a huge learning experience for me. In this course I am going share as much as I can to help others succeed with their businesses. This is the course I wish had been available when I started out. I am looking forward to getting out from behind my computer and meeting aspiring software entrepreneurs.

There is a £50 discount if you book before the end of September and the course is limited to just 10 attendees. If you have ever dreamed of escaping your cubicle and becoming your own boss, what are you waiting for?

Click this link for more details

I am just beginning to publicise the course and I would really appreciate a mention on Twitter, Facebook, LinkedIn, blogs, social news sites etc.

Asshole x software = Asshole at scale

A builder recently dumped a couple of wheelbarrows full of rubble on the common land behind my house. He’s an asshole. But at least he is limited in how much of an asshole he can be by physical constraints, such as the amount of waste he can generate and dump in a day. With the right software, there is almost no limit to how big an asshole he could be.

Spammers send out millions of emails in the hope of getting a few hundred dollars in sales of Viagra, Ugg boots or whatever other dubious merchandise they might be pushing. According to one study the sending of 348 million pharmacy spam emails resulted in 83 million emails delivered and a grand total of 28 sales. That is a 0.0000081% conversion rate. Assuming that the 83 million emails delivered took an average of a second each for a human to scan and delete, that’s around 23 thousand hours wasted. For 28 sales,  netting perhaps a few hundred dollars in profit. You have to be a massive asshole to waste so much of other people’s time just to make a few hundred dollars.

Spamming is just one of the more obvious and egregious examples of being an asshole at scale. But there are lots more. Article spinning for example. This is where assholes use software to generate lots of small variations on a (usually poor written or plagiarised) article in a desperate attempt to increase their SEO ‘footprint’. It might seem like a clever way to game the system and get one over on the all-powerful Google. But, if it works, the search results will fill up with poorly written garbage and the signal gets squeezed out by ever increasing noise. A tragedy of the commons in which we all lose in the long run.

Comment spam on forums and blogs is another area where assholes can use software to scale their activities. To date this blog has had a total of 77,811 spam comments, most of them undoubtedly generated automatically. Thankfully, the vast majority were caught by WordPress’s Akismet software. But I still waste a few minutes every week sifting through the spam for false positives. If you multiply that by millions of blog and forum owners, week after week, it adds up to a massive amount of wasted time. Again for marginal gains.

As software becomes increasingly pervasive and bandwidth becomes ever cheaper, new areas are becoming available for assholes to exploit. For example using software to algorithmically generate vast numbers of T-shirt slogans for Amazon without properly checking the results. Not only does this fill up Amazon search results with garbage (many of the slogans make no sense) but some of the slogans were deeply offensive.

The best defense against the assholes is more software, for example: spam filtering software and improved search algorithms. I guess that is good news for those of us that make a living writing software. But I worry that the assholes will win the arms race in the long run and the Internet, one of the greatest inventions in human history, will be reduced to the information equivalent of grey goo.

What can we do about it as software developers? Firstly don’t be an asshole. Consider the overall impact of your actions. Sure you could blast out thousands of poorly targeted emails to promote your product. But, just because you can, doesn’t mean you should.

Secondly, consider whether there is a product you could write that could help combat the assholes. People and businesses (especially businesses) will pay good money for products that save them time.

Finally, don’t create software for assholes. Generally speaking, a tool is not inherently good or evil. You can use a knife to stab someone, or cut a sandwich. But if you are writing software specifically aimed at spamming, spinning or other asshole scaling activities, then you are the biggest asshole of all.  With power comes responsibility.’If I didn’t do it someone else would’ is no defense. Of course, if you are a true asshole, you don’t (by definition) care what other people think. But, in the unlikely event that you are an asshole that has read this far, consider this – surely even you don’t want a customer base comprised entirely of assholes?

Amazon PPC Ads

The ever-expanding Amazon empire is now offering their own Pay Per Click ads.

Amazon Product Ads is an advertising programme designed to provide Amazon.co.uk customers seamless access to products available on external Web sites. As a seller, you simply upload your catalogue of products you wish to advertise and set your cost-per-click bids and budget. Amazon will then display your ads to Amazon.co.uk customers when they shop for your product or related products. Customers who are interested in buying your product can click through to your Web site and purchase the product directly from you.

amazon-ad

As with Google Adwords, you bid for clicks. Minimum bid prices depend on the category of goods you want your ad to appear in. On amazon.co.uk the categories and minimum bid prices are currently:

amazon ad prices

There doesn’t seem to be any restrictions on advertising downloadable software. So it might be worth trying if you software fits into any of the above categories and has a relatively high ticket price (given that typical conversion rates are 1% there is no point paying £0.10 per click for software that you sell for £10). For example, if your software is related to music, you could advertise it alongside musical instruments. I would consider advertising my table planner software alongside books or DVDs related to wedding or event planning. Unfortunately that isn’t an option at present.

amazon ad categories not supported

I could try advertising my software in categories such as Kitchen&Home›wedding favours. But people looking for wedding favours aren’t explicitly searching for table planners, so the click to sale conversion ratio is likely to be well under 1%. Also the minimum bid price in this category is £0.15 and I am guessing that my ads wouldn’t even show if I bid the minimum. Paying >£0.15 per click with a <1% conversion rate for software priced at £19.95 doesn’t make sense. So I haven’t signed up.

It is inevitable that the bid price will inflate over time. So, if you want to try it, now is probably a good time. Amazon.co.uk are also offering £50 in free clicks if you sign up now. You can find out more on the Amazon Product Ads FAQ.

Have you tried Amazon PPC ads? If so, do you have to bid significantly above the minimum bid prices and how do the conversion rates compare with other PPC ads (such as Adwords)?

Code Club – inspiring a new generation of programmers

code clubYesterday I, and fellow software developer Oliver Balmer, ran the first session of our new programming club at the school our children attend. We weren’t sure what to expect, but it went very well. The children really enjoyed it and so did we. I am just putting a few notes here in the hope that it piques the interest of other software developers.

  • Code Club is a United Kingdom based network of volunteer-led, after-school coding clubs for children aged 9-11.
  • scratchThe first 2 terms are based on the free Scratch programming language developed by MIT. This is an excellent tool for teaching children programming. Programs are constructed by snapping together colour coded blocks – there is no syntax to learn and very little typing. Within an hour all 9 children went from nothing to having created a simple example game with graphics and sound.
  • Later terms progress on to HTML/CSS and Python.
  • If you want to set up a Code Club you need to get a DBS criminal records check (previously called a CRB). We did it through STEMnet. It was free and painless. We had to attend an evening course, but this gave us some useful information about the education system and dealing with children.
  • Code Club provides all the teaching materials, including print-out worksheets for each session.
  • There must be a qualified teacher in the room at all times with the volunteers, so you need to get buy-in from the school staff.
  • The process we went through was:
    • Registered with the Code Club website
    • Discussed it with the school
    • Wrote a proposal to the Headmaster
    • Got our criminal record checks
    • Went into the school and did a presentation to recruit interested children
    • Ran a competition for any children who wanted to join
    • Liased with the school IT co-ordinator to get Scatch on the school PCs.
  • The school has been very supportive and helpful throughout.
  • The proposal isn’t required by Code Club, but we thought it was a good idea to make sure everyone understood exactly what we wanted to do. One of the school governors (who is also a Deputy Headmaster at another school) helped us to write it. It was only a couple of pages long.
  • We showed a 3 minute video about Scratch in the presentation to the children. That had a much bigger impact than 2 middle aged programmers talking about how cool programming is. When we asked how many kids wanted to join, about 40 hands out of 60 shot up!
  • We took care to emphasize that programming isn’t just for boys.
  • We required any child who wanted to join our club to enter a competition to design their own computer game (on paper). This allowed us to restrict the intake to a manageable number, if too many wanted to join. Also it created an entry barrier to the less interested ones. We don’t want to act as a free baby sitting service for children who aren’t really interested. In the event we got 10 competition entries and we accepted them all.
  • 9 out of the 10 children turned up for the first session (6 boys and 3 girls).
  • We created a certificate for the best competition entry and handed that out at the first session.
  • Our club sessions are an hour and 15 minutes. We added the extra 15 minutes to allow some time to get everyone settled. The children were very engaged and had no problems concentrating for that long.
  • There is no fee to attend our Code Club sessions (unlike many of the other after school clubs).
  • You need to run the club at a time that suits the school/children. This isn’t a problem for me as I have my own business and can set my own work hours. If you are employed 9-5, you may have to negotiate with your employer.
  • Our school’s IT suite is well set up, with a projector and enough PCs for each child to have their own. This makes life easier.
  • It was slightly chaotic, but fun!
  • You may be able to join an existing Code Club rather than having to start a new one. Check the Code Club website for existing clubs.

I went to a secondary school a few months back and talked to some 80 teenagers about what it was like to be a software engineer. When I asked how many of them had done any programming at all, only one of them had. One! We are teaching a generation how to use Excel, Powerpoint and Facebook, but not how to create their own software. What a wasted opportunity. Of course, we don’t need or want everyone to be programmers. But I think it is such an important skill that every child should at least have an opportunity to try it. I believe Code Club can go a long way towards filling this gap. Currently over 700 schools in the UK have Code Clubs.

To find out more go to the  Code Club website at:

http://www.codeclub.org.uk/

I believe there are similar initiatives to Code Club in other countries, but I don’t know anything about them. Please comment below if you do.

This blog’s sixth anniversary

diverI published my first blog post 6 years ago today. I didn’t even notice the fifth anniversary of this blog, so I am going to indulge myself today instead. 277 posts, 3459 (non-spam) comments and over 1.6 million page impressions and I am still here, posting sporadically as time and inspiration allows. Maybe I will still be writing in another 6 years. Maybe not.

Here are some of my favourite posts from the last 6 years, in no particular order:

It would be nice to break 2 million impressions. I calculate that this will take approximately another year at the current rate of progress.

I have lots of ideas for new posts. But if there is any subject you, dear reader, would particularly like me to write about – add a comment below. I don’t promise that I will write about it, but I will certainly consider it.

Ephemeral

stonemasonMy grandfather worked most of his life as a stonemason. Much of that time was spent restoring the ruin of a Bishop’s palace in Sherborne. His work is still visible long after his death. The work of the stonemasons who built the palace is still visible after more than 8 centuries. How long after you stop programming is any of your work going to last? If it is a desktop app, I doubt anyone will have a working computer with an OS that can run it in 20 years. If it is a web app, it dies the day the hosting bill no longer gets paid. What are you going to show your grandchildren – some screenshots or faded printouts?

Everything is ephemeral over a long enough timescale. In the long run, we are all dead, as John Maynard Keynes famously pointed out. But it is slightly depressing how short the timescale is for software. It lives fast, but it also dies fast. Our work is more like that of an ice sculptor than that of a stonemason. I guess all we can hope for is that the software we spend so much of our life crafting brings us some fulfilment and improves the lives of our customers during its brief lifetime.

The brutal truth about marketing your software product

badwaterWe tend to hear a lot about software industry success stories. But most of us mere mortals have to fail a few times before we learn enough to succeed. In this guest post William Echlin talks about the hard lessons he has learned about creating and selling software products.

Probably, like you, I started developing my own software application a few years back. I had this dream of working for myself and becoming financially independent. The money side was a nice goal to have but ultimately I was looking for the fulfilment of working for myself. Sound familiar? Well, if it does, you may have learnt many of the lessons I’ve learnt. I don’t mind admitting now that I got carried away. I got carried away with building a test management application to the extent that I forget about many of the key things you need in place to build a successful business.

After a few years work I’d created the leading open source test management application (a product called QaTraq that’s still available on Source Forge but a little dormant). It had cost me time, money and effort. I’d achieved some success with building and marketing a free product. Next stop taking it commercial. This is where it gets brutal.

About a year into leaving a full time job I’m taking the last £1,000 out of the joint bank account. I’m making some sales but it’s damn tough. A few months later and I’m in the supermarket £15,000 in debt wondering if my credit card is about to be rejected for the families weekly shop. You read about this sort of thing in biographies on successful entrepreneurs. These guys take it to the limit and then succeed and make millions. Sounds so glamorous. When your wife, 3 year old son and 1 year old daughter depend on that credit card being accepted believe me it’s NOT glamorous.

Building a business has always been about balancing design, development, sales, marketing, support, testing, etc. When you’re a one man band that’s not easy. You try to do everything. You’re bloody brilliant at building the product. The trouble is, once you want to make a living out of it, that “building” is almost the least important bit. After I’d spent 5 years building my product I stumbled upon one very useful piece of advice. It was a little late for me but maybe it’ll help you….

“Learn how to market and sell before you build your product. Learn these crafts by picking a product that’s already been built and act as a reseller”.

That’s worth reading again (it’s counter intuitive). What’s being said here is that if you can’t market and sell a product (ANY product) then the odds of succeeding with your own product are slim. If you can’t “market and sell” what on earth is the point in wasting all that time, effort and money building your own product? If you’re never going to be able to market it, and sell it, why build it?

So find a product in a slightly different sector and sign up as a reseller. Save yourself the time and effort of building a product and practice marketing and sales with someone else’s product first. Create a web site, develop an ad words campaign and start promoting with social media. Sell the product! If you can’t get the hang of this why bother building your own? If you can get the hang of building your own marketing machine it won’t be wasted effort. If you’re clever and pick the right product / sector you just need to switch the product on your site a year or so down the road. Once you’ve built the marketing and sales engine switch it to sell the product you’re building.

I’m not saying that this is the only way to go about it. I’m just saying that if you don’t have the determination to learn, understand and be successful with marketing and sales early on, then it’s unlikely you’ll succeed with your own product. So why waste time building it. It’s a tough lesson to learn. One I learnt the hard way.

And the specific lessons I learnt the hard way? Well I’d do these things first if I was ever to do this again:

1. Create at least one lead generation channel as an affiliate for another product. That lead generation channel will probably be a web site and as part of that you’ll need to master things like:

  • Google Adwords
  • Social media
  • Email marketing
  • Blogging
  • Link building

All these things take a lot of time. Do you have the determination to learn and execute on all of this?

2. Spend some time in a sales related role. Initially I was working in a full time job whilst building my own product in my spare time. The best thing I did was offer to help the sales team with product demos. I learnt lots from working closely with sales people (I didn’t like them very much, but that’s a different matter) and clients. If you can’t do product demos to clients, or you can’t talk to clients confidently then you don’t stand a chance of selling anything. People buy from people and a product demo is THE place to show case YOU (and the product)

3. Spend time learning about re-marketing. A lot of money goes into getting that initial lead. Don’t waste it! Understand Google’s re-marketing campaigns. These allow you to follow the people that came to your site and continue serving them banner ads on other sites. Understand email marketing once you’ve captured an email address. Yes I hate most of this when I’m on the receiving end. The reality is that it works though. That’s why companies do it (and why Google make so much money). I’ll tell you now that your business won’t survive if you don’t master some of these techniques. And if your business doesn’t survive then every ounce of effort you’ve put into building that application is wasted!

4. Spend time learning about cross selling. A significant amount of revenue can come from cross selling other products. When was the last time you went to a restaurant and they didn’t try to sell you a bread roll? When was the last time you flew somewhere and they didn’t try to sell you priority boarding? For you this might be in the guise of selling your leads to other companies that have complementary products. It might be providing different editions of your application. There are many other ways to add additional revenue streams to your prime product sale. These streams are absolutely critical to the success of your business.

5. Don’t try to become a sales person. You don’t have to be a sales man/woman to sell. Some of the best sales people I’ve worked with are those that just go out of their way to HELP the customer. They understand their niche inside out and have the gift, not to sell, but to HELP. People that are looking to buy something want help. They want an itch scratched or a problem solved. If you can help them with a solution then you’re most of the way towards making the sale. Forget all this rubbish about psychology and techniques to influence people. The best thing you can do is enter the mind set of helping! Go out of your way to help.

I don’t have all of this right by any stretch. I know one thing though. Products don’t sell themselves. And if you’re not prepared to start learning about sales and marketing you won’t sell your product.

It was all a bit ironic for me though. I spent years building my own test management product to help software testers. It even started out as the leading open source solution in it’s market for many years. I mastered SEO and created a great lead generation process (the oxygen of any business). I created a version which I put a price on and sold to companies. I even sold to a number of significant companies. But I just couldn’t do all of it. I couldn’t balance the design, development, testing, marketing, sales, support, etc. It’s brutally painful when this dawns on you.

In the end what I’d really mastered was lead generation. I ended up with a web site that attracted my target audience but failed to sell much. When you realise that, you realise that it’s the product. Nothing wrong with the marketing and sales. It’s the product. There were better products out there. Kind of tough to swallow but as soon as I did, I moved on. These leads, or rather people (because leads are actually real people), were looking for help. I just needed to provide them with the right product and services. So I started reselling other products and providing consultancy around those products on my test management website.

In the end I had one of the toughest bits right. If you get the lead generation right you’ve built a marketing foundation that you can build any type of business around. For me I just wished I figured the marketing piece out before I’d built my product. Now I just work on my marketing. Oh, and I help companies with their software testing and test management. For me at least, it’s much easier this way.

William Echlin has spent 20 years in testing, working on everything from air traffic control systems to anti-virus engines. He had a bad experience in his early childhood trying to effectively manage test cases with vi (he’s still a huge fan of vi but recognises that text files make a lousy repository for test cases). In an attempt to deal with these childhood demons he became a consultant on all things related to test management.

The 1% fallacy

Here is how to make a fortune writing software:

  1. Pick a large and established software market e.g. back-up, anti-virus or customer relationship management (CRM) software.
  2. Write a new product for that market.
  3. Get 1% of the market.
  4. Retire to your own island.

These markets are massive. The CRM market alone is estimated at around $18 billion per year. 1% of that is $180 million. How hard can it be to get one measly percent of a market? Ka-ching!

Except of course, it doesn’t work, unless you have massive amounts of funding or a brilliant idea that can completely disrupt the existing the market. Even then, you probably still need a fair amount of luck.

The competition in a large market, such as CRM software, is very tough. The top  companies have huge budgets and armies of developers and marketing people. Your chance of getting on the first few pages of Google results for a search term such as “CRM software” are as near to zero as makes no difference. And there are all sorts of network effects working in the favour of the established companies. For example, the biggest vendors will have an ecosystem of consultants, resellers, training courses, books, user forums and third party products that no new product can hope to match.

Then there are power laws which mean that you have to rank surprisingly high to get 1% of a market. The most famous power law is the Pareto 80/20 distribution. This is named after Italian economist Vilfredo Pareto, who observed that 80% of the land in Italy was owned by 20% of the population. Pareto distributions appear in all sorts of places. I have looked at various data for my own product and I have found the 80/20 distribution appears in my own data.  For example:

  • 77% of searches result from 20% of search phrases
  • 75% of sales come from 20% of email domains

If I could be bothered to crunch the numbers I expect I would find that  approximately 80% of support emails come from 20% of my customers and 80% of hits are on 20% of web pages. There is evidence that companies sizes are also distributed according to a Pareto type power law. Assuming a Pareto-type distribution, we can calculate what percentage of the market each company has according to their ranking using Zipf’s law :

Number of companies 1% rank
100 19
1,000 13
10,000 10
100,000 8

This table shows the rank you need in a market of given size to get 1% of the revenue of that market. For example, if there are a 1,000 companies in your market, you need to be ranked 13th to get 1% of the total sales.

How many companies are selling CRM solutions? I have no idea. Even in my little niche of seating plan software I have at least 10 direct competitors and well over 100 competitors with substantially overlapping functionality. I dread to think how many CRM products there are. At least a thousand I would have thought. What are your chances of coming from nothing to being the 13th biggest selling CRM solution? Also the conversion rates of customer visits to sales are typically around 1%. That means if you want to sell to 1% of a market and your main sales channel is your website, you need to get pretty much everyone in that market to at least visit your website. Good luck with that. Your best chance of getting a chunk of a big market is to create that market and grow with the market. But creating new markets is notoriously expensive and risky.

If you are a small software company, you have got a much better chance of getting a decent sized chunk of a small market, than 1% of a huge market. As a general rule of thumb, I would say pick a market for which you have got a decent chance of getting in the top ten Google results for important search terms (power laws again). You can even do this by going after a small segment of a big market. e.g. a CRM solution aimed at companies that trade on EBay. Or perhaps a CRM solution aimed at companies that trade on EBay in the Spanish-speaking market. You can always broaden your focus if you are successful in a small market.

Whatever you do, don’t stand in front of investors and pitch them the 1% fallacy. It makes you look an idiot. I should know, because I’ve done it.

How I increased sales 50% by adding extra price points

tinsHow much should you charge a customer for a product? From a pure economics point of view – as much as the customer is willing to pay. The airlines are masters of this. The people on a typical commercial flight pay a wide range of prices depending on factors such as: which class they are travelling, whether they are returning before the weekend and how far ahead they booked. The smug businessman in first class (who booked a week before and is returning the same day) might be paying more than 10 times as much for a seat as a someone in economy (who is going on holiday for 2 weeks and booked 6 months in advance). The businessman probably isn’t spending his own money, so he doesn’t care that much what the price is. Does the business traveller cost the airline 10 times as much? Of course not. The airline is simply maximizing its profits by charging more for the people who are prepared to pay more.

Supermarkets also use multiple price points by offering value, standard and gourmet versions of common products. The gourmet version has pictures of smiling farmers and tells you how it was lovingly hand-picked from a sun drenched hillside in an exotic country. The value version looks like UN emergency rations. The supermarket hopes the less price sensitive customers will buy the gourmet version, but they still want something they can sell to the more price sensitive customers. Is there much difference between the 3 products part from the packaging? Probably not.

When you start to look around you can see there are lots of different strategies businesses use to charge according to how much the customer is prepared to pay. Does a hardback book cost significantly more to produce than a softback book? No. But if you really want to read the book you will pay the extra for the hardback, rather than wait 6 months for the paperback. The gaming industry doesn’t even bother to change the product. Hardcore gaming fans will pay £40 for  a new blockbuster game. A year later you can get the same game (probably with bug fixes and add-ons) for £15. Two years after that it will be in the bargain bin for £5. Discount coupons are another common method you can use to charge price sensitive customers less.

I decided to try multiple price points for my table planner software. The graph below shows the 12 monthly cumulative sales[1] of my product for a year before and a year after moving from 1 to 3 price points. The red arrow points to the month I made the change. The revenue for the 12 months after the change were almost exactly 50% higher than the 12 months before.

multiple-price-points

Before September 2009 there was only 1 edition of PerfectTablePlan and it cost £19.95. Initially PerfectTablePlan was aimed at people planning their own wedding, bar mitzvah, Quinceañera etc. Typically they would only use the software once, so £19.95 was a sensible price. But as the product matured and improved it was increasingly being used by professional planners. It seemed crazy to be charging professional planners such a low price for software they might be using every week. So I decided to add additional price points at £49.95 and £199.95. The higher price points having additional features aimed at frequent and professional users.

I choose 3 price points because this seems a natural fit for the different types of people using my software (one-off users, frequent users on a budget and professional users spending someone else’s money). This turned out to be a big win for me. Not only did my average order value shoot up, suddenly I had more credibility with professional event planners, who might not have taken a £19.95 product seriously, no matter how good it was. Price is a signal of quality, after all.

Having 3 editions of the product with different feature sets also allows me to offer an increasingly sophisticated product to ‘power’ users without overwhelming more ‘casual’ users. This is a big bonus for all my customers and it reduces my support burden considerably.

There are various ways I could have set the price points. For example I could have set the price points based on the maximum number of guests at an event or on the duration of a licence. Charging according to the number of features seemed to fit best with my market and existing licensing.

I thought carefully about how to introduce the extra price points part way through the life of the product so as not to confuse or alienate existing users. I decided it would be too complicated to add the new price points at the same time as doing a major (paid) upgrade from v4 to v5. Instead I released the new editions at the same time as the v4.1 upgrade. I announced ahead of time that v4 would become v4 Home edition and that 2 new products were being released: v4 Advanced edition and v4 Professional edition. I was careful to ensure that I added plenty of new features and didn’t remove any existing features between v4.0 and v4.1 Home edition, so users who didn’t want to upgrade didn’t feel cheated. They were few complaints. I encouraged existing customers to pay the difference to upgrade edition and many did.

All 3 editions of the product are contained in a single executable and customers can switch between the editions dynamically at runtime. This was more work initially than using #defines to create 3 separate executables, but I think it was worth it as it allows the customer to easily trial or upgrade to a different edition without reinstalling or re-starting PerfectTablePlan.

A lot of software products have 2 or 3 editions, with the most expensive edition costing 1.5 or 2 times the cheapest edition. This seems far too narrow a range to me. I’m confident that a professional event planner can get at least 10 times the value from the product compared to someone planning their own (hopefully) once-in-a-lifetime wedding event. So I decided to go for a 10:1 difference between the cheapest and most expensive edition. If the airlines can do it, why can’t I? In retrospect I think this was a good call.

Having multiple price points is not without its downsides. It makes the sale more complex and it is an extra decisions for the customers to make. People are demotivated by having too many choices and I think having multiple price points has reduced my visit:sale conversion rate slightly. So don’t add too many price points. 3 is probably plenty in most cases (the supermarkets should know). But the slight drop in conversion rate has been made up many times over in a significant increase in average value per order. Also I should point out that the increase in sales wasn’t ‘free money’. I had to do a lot of work to add the extra features to sufficiently differentiate the 3 editions of the software, overhaul the licensing, tweak the website etc. But it was definitely worth the effort for the increase in sales. I think it also been beneficial to my customers as they now have a choice of which edition of the product best fits their budget and requirements.

[1] Each point is the total sales for that month and the previous 11 months.

VAT basics for software vendors

The dreaded VAT. Ugh. Value Added Tax (VAT) is the European equivalent of sales tax and it is a Royal Pain In The Arse. However, if you are running a business that makes sales in Europe you need to understand VAT. In particular it has important implications for your choice of payment processor, even if you are based outside the EU or below VAT registration thresholds. I have put together a few pointers here in the hope that it will help someone grappling with the complexities of VAT. But please note:

  • I am not an accountant. If you need proper advice, talk to a proper accountant.
  • The VAT rules are complex and may be interpreted differently by different people.
  • The rules may be different in different countries.
  • The rules change over time.

Only VAT registered businesses have to charge VAT. You have to register for VAT once your sales reach a certain threshold. At the time of writing,  UK-based businesses have to register for VAT if their EU sales exceed £77k in a 12 month period (technically it is UK sales, but the ‘place of supply’ for EU consumers is classified as the country of the seller). You can also choose to register for VAT before you reach the threshold. But it usually isn’t worth it, unless perhaps you think having a VAT number is essential for your credibility. Personally I waited until I couldn’t avoid it any longer.

Even if your business is not based in the EU, the EU still expect you to pay VAT on any sales inside the EU once you reach a threshold. This is controversial and it isn’t clear to me exactly what the EU can do to enforce this if you are based outside the EU. Talk to your accountant.

The VAT rate varies between countries. At the time of writing it is 20% in the UK and 19% in the Netherlands. It also varies over time, it used to be 17.5% in the UK.

The UK also has a simplified flat rate VAT scheme with a lower VAT rate. But you can’t claim back VAT on purchases. Worse still, it appears that you will effectively be paying VAT on sales outside the EU. So that doesn’t seem at all attractive.

The VAT rules are complex and depend on:

  • where you are based
  • where your customer is based
  • whether your customer is a business or a consumer
  • whether you are selling goods or services

Technically you do not have to charge VAT to an EU business, even if they aren’t registered for VAT. Apparently they are then responsible for “self-charging” the VAT. However the burden of proof is on you to show that the customer is a business. So most vendors require a VAT number as proof of business status.

There also seem to be disagreements over whether software is goods or services. What if you ship a CD?

Here is a simplified summary in pseudo-code of whether a seller needs to charge VAT on software as I understand it:

paysVAT()
{
    if ( seller registered for VAT)
        if ( customer in EU )
            if ( customer is a business )
                if ( customer in same country as you )
                    return TRUE;
                else
                    return FALSE;
            else
                return TRUE;
        else
            return FALSE;
    else
        return FALSE;
}

Except that people in Norway and Switzerland (which aren’t in the EU) pay VAT in some circumstances. Don’t ask me why. Also you don’t pay VAT on some items, e.g. postage. And outside the scope of VAT (O), not rated for VAT (N) and zero rated for VAT (Z) are all different VAT codes meaning no VAT is payable. As I said, it’s complicated. Not complicated and interesting like quantum mechanics or the love lives of celebrities. Just complicated.

The only upside of being registered for VAT is that you can claim back the VAT you pay on any purchases you have made (make sure you get a VAT receipt). Or, if you are buying from another EU country, you can tell them your VAT ID and they shouldn’t charge VAT (see above). So any equipment you buy in the EU is now 20% cheaper. This is small recompense for the giving 20% of your sales in the EU to the VAT man. Try not to think about that. Instead give yourself a pat on the back for having reached the VAT threshold. A lot of businesses never do.

Note that when you register for VAT you may be able to claim back the VAT of products purchased before you registered. When I registered I could claim back VAT paid on goods purchased within the last 3 years and services purchases within the last 6 months. So keep your VAT receipts.

Congratulations on making it this far. Here is the important bit. How you process payments has important implications for VAT. When someone pays you via a payment processor, such as PayPal, legally they are buying from you and the payment processor is just handling the payment on your behalf (like a bank cashing a cheque). So you are responsible for collecting what VAT is due and paying it to the appropriate government. This can be a major headache if you are selling hundreds or thousands of licences per month.

When you use a reseller, such as Avangate or Fastspring, legally you are selling your licence to the reseller and the reseller is then reselling it to the customer. The reseller is then responsible for deciding what VAT is due, collecting the VAT and doing the paperwork. They then pay you net of the VAT and their commission. Leaving you to sort out the VAT for their one payment to you per month.

Using a reseller is a big win if you are registered for VAT. I am registered for VAT and use Avangate as my payment processor. They do the heavy lifting in terms of calculating, collecting and paying the VAT on my sales. But if you aren’t registered for VAT be wary of using a VAT registered reseller – approximately 20% of your sales will be disappearing in VAT (which the VAT registered reseller has to charge) which you could be keeping if the customer bought from you direct. So if you aren’t registered for VAT, a reseller such as Avangate or Fastspring may not be the best solution for you. Check out e-junkie.

VAT admin is fairly straightforward. To keep the VAT man happy I have to file:

  • an EC sales list every month
  • a VAT return every quarter

My Quickbooks accounting package generates the numbers for these. It only takes a few minutes to file reports online once all the transactions and VAT codes are entered correctly into QuickBooks. The VAT man then debits (or credits) the appropriate amount from my business account each quarter. It is not too bad, as long as I don’t think about the wheelbarrow loads of cash Avangate keeps to pay the VAT man. Maybe they roll around naked in it on the last day of every quarter. I probably would.

When I first registered for VAT I tried adding the VAT onto my existing prices. But I found that sales dropped more than 20%. So I ended up keeping the gross price (including VAT) the same, whether the customer pays VAT or not (Avangate gives you this option). Whatever you do, make sure it is clear whether any prices you quote include VAT. EU consumer expect to be quoted prices inclusive of VAT and won’t appreciate it if you try to sneak on an extra 20% at the end of the purchase process. You may be legally required to quote the price including VAT in some countries.

A final note of warning. The VAT man has a lot of powers. I understand the UK VAT man can kick your door in and seize your equipment without needing even a warrant. He might not be impressed to find out that the computer you reclaimed the VAT for is an XBox. Do not mess with the VAT man.

If I have made any mistakes, missed anything out or if the rules are substantially different in your country, please add a comment.

** Please note that this article was written in 2012. It doesn’t cover changes since then, notably ‘VAT MOSS’. **

Thanks to Marcus Tettmar of Macro Scheduler automation software for checking this through and advising me on some of the finer points.