Today I thought that it would be worthwhile to write a back-to-basics post on the topic of making money with web services. I've been talking about this subject for a couple of years, but this is the first time that I have pulled together all of the material in written form.
In this post I will take for granted the fact that you want to make money using web services. There are lots of other reasons to use web services that don't involve money -- for research purposes, as a learning vehicle, a creative outlet, or simply to have fun. Those reasons are all totally legitimate, but I won't be addressing them today.
Some people start out the with the desire to create enough income from their web business to replace their full time job. This is a great goal and I know many people who have been able to do this. At first, you should think of your new enterprise as a side business, with full-time potential. The technical term for this is a "money machine." My favorite book on this subject is Don Lancaster's Incredible Secret Money Machine. Although the book was written in the pre-web era it contains a lot of excellent advice and a number of timeless truths about work and life. The book is apparently out of print, but available directly from Don or through the Amazon Marketplace. You can read the first chapter here.
So what do we need in order to make money using web services. Here is my laundry list:
- A great idea.
- Technical skills.
- Web services.
- A business model.
Let's address each of these in turn.
I listed this first, but you don't always have to start here!
A lot of cool things have been built by people who just start experimenting in an area that they find interesting. Many people have an almost intuitive sense of what the world needs, or they start by solving a problem that's of interest to them. You can approach this question a bit more formally by asking yourself what unmet need you can fill with your proposed business. Or you can look around at your friends and family and see if there's a way to use technology and web services to make them more informed or more productive.
Once you know what you want to build, you will need to actually build it. I'm certainly not going to give you a crash course in client-server Ajax Web 2.0 development in the next paragraph or two.
If you have some computer science training and you want to gain some genuine web services experience to enhance your career and your resume, building your own money machine on the side is a great way to get started. At first your vision may very well exceed your ability to implement it, but as your skills grow this will become less and less of a constraint.
If you don't have the formal background or experience, you may find it advisable to find a partner with complimentary skills. In many cities you can find meetups or user group meetings on technical subjects such as PHP programming or web development.
You can find all sorts of interesting web services over at the Programmable Web. As I write this there are currently 222 distinct services listed there, and more are added almost every day.
This might seem obvious, but you have to proceed with care as you choose your services Not all web services are of commercial grade, and not all services are licensed for commercial use. Before you go too far down any particular road, it is advisable to check the license agreement for the services that you intend to use, and make sure that your use is in accord with the license. You can use any of Amazon's web services for commercial purposes, but you should still familiarize yourself with the license.
The simplest applications will call a single service. That's a great way to start. As you progress, you can start thinking about creating a mashup which combines data from two or more services. You can see what's already been built by looking at the Mashup Matrix. While you are there, look at the "white space" (mashups that don't yet exist) and use this as you start the creative process.
There are lots of different ways to define a business model. For the purposes of a online or web application, my definition is quite simple: the business model turns traffic (site visitors) into money, in a fashion that grows in proportion to the amount of traffic that's present.
Two of the main web business models are affiliate programs and advertising.
With an affiliate program, you (the site owner) basically act as a sales agent for goods or services offered by other organizations. The Amazon Associates program is a great example of what I'm talking about. To get started, you apply to the program. After they verify that your site is within their guidelines, they will supply you with an Associate Id. This is simply a short string (something like "webservices-20") that identifies you to Amazon. You include your Associate Id in the web service calls that you make to the Amazon E-Commerce Service. The links returned by ECS are then customized to include your Id. When you take the ECS data, put it on a site and use the supplied links, you will earn commissions (currently ranging up to 8.5%) on the sales that happen through your links.
There are other affiliate marketing programs in existence, and there's even a regular Affiliate Summit conference. You should be able to find out a lot more with a bit of searching. Once again, be sure to check the rules before you go off and write a lot of code.
With advertising, you dedicate some portion of your site's real estate to the display of advertisements. Some advertisers will pay you on an exposure basis, paying you based on the number of times that your site displays their ad. Others will pay on a click (also known as a CPC or cost-per-click) basis. Finally, the most sophisticated advertisers are moving toward CPA, or cost-per-action. With this model you get paid when your site visitor takes the action desired by the advertiser (signing up for a list, making a purchase, and so forth). Again, there are many advertising networks out there. You can learn a lot more about advertising models and terminology here and here.
At this point you have realized your vision in code, and you have a great business model. You know for a fact that more visitors will mean more revenue, and you are ready to roll. Now you need to attract some visitors!
The web has created an amazing number of publicity vehicles and you should take full advantage of each of them.
Word of mouth, as always, is great. If you show your site to one person and he's so impressed that he in turns shows it to two more people, you've got a hit on your hands. This is often called customer evangelism (of course there's a great blog on the subject). Treat your visitors and customers right and they'll naturally want to tell others.
If you have a blog, write about what you are doing, and write about the industry context in which it operates. Show that you are an expert not just on your own application but about the entire field. A good example of this is the President's Blog, run by Tom Snyder. Tom's blog shows that he is immersed in the field, and that he's fully cognizant of the technology and of his competition.
Get others to blog about you. This is another form of word of mouth advertising, and is very powerful. If you are using the Amazon Web Services, drop me a note and I'll be happy to queue you up for an article or a mention. Use your own blog to link to others in the industry, and make polite, respectful requests that they consider blogging about what you've done. Do something so cool, compelling, and relevant that they'll want to do this before you even have to ask.
You will want to make sure that the relevant search engines are aware of your site, and you may want to learn about two really important acronyms, namely SEO and SEM. SEO is short for Search Engine Optimization and you can read more here. SEO refers to the practice of getting good placement and representation in the search engines. SEM is short for Search Engine Marketing, and you can read more here. SEM and SEO can be a bit difficult to distinguish; my recommendation is to learn a bit about each one and to decide for yourself which avenue you would like to take.
Finally, you can also buy traffic by running advertising of your own; this is a form of Search Engine Marketing. There are many online advertising networks, and they each have their own good and bad points. With most of them you will ultimately end up "buying" keywords, often bidding against other people who would also like to send traffic to their sites. Perhaps your site sells rubber chickens. You could buy search engine phrases and keywords such as "rubber chicken," "rubber duck," and other popular variations. Once you start buying advertising, you will want to make sure that you understand all of the factors that influence each component of your business model. If you spend $1 to attract a visitor to your site, but earn just 50 cents per visitor, you are losing 50 cents on each click and you won't be in business for very long. On the other hand, if you spend 10 cents to attract a visitor and you still earn 50 cents, you are making 40 cents on each click and your model is very simple -- pour more money into advertising, and collect more in revenue (I know there are lots of other factors at the extremes; I have kept this simple to prove my point).
If you are going to create a real business, you need to do a lot of measuring and you need to run your business based on what you see. You need to know how much traffic is coming to your site, how much money you are spending, and how much you are earning. You need to know which search engines are sending you the most traffic, and which ones are sending you the most valuable traffic. If you are paying for advertising, you need to know which of your keywords has the best "conversion" (the ratio of visitors to purchasers).
You can get some of this from expensive commercial packages, or you may end up building your very own business dashboard.
I hope that I've given you some food for thought here, as well as some guidelines for getting started. I'd love to get your reaction to this, so please feel free to post a comment or two. Let me know what you come up with. Good luck!