This is the subhead for the blog post
When Google announced changes to its AdWords API program a few weeks ago, there was a bit of outrage amongst the SEM community. Unfortunately, the outrage was completely misdirected. Let me just be clear: the fact that Google is now charging for API usage isn’t what the SEM community should be outraged about; rather, it’s that Google is trying to “unlevel” the playing field by preventing bid management companies from showing both Google and Overture data on the same page of an application, or using Google data to benefit Overture campaigns.
I know this post is going to be pretty confusing for folks who are SEM novices, so let me give you a bit of background.
First, an “API” (which stands for “application programmer interface”) is basically a tool that programmers use the connect to the ‘nuts and bolts’ of the AdWords system. If you have ever used a bid management program (KeyWordMax, Atlas, BidRank, SearchRev, DidIt, etc) or if you rely on a major SEM agency to handle your PPC campaigns (eFrontier, iCrossing, and so on), all of these systems bypass the traditional AdWords user interface (the one that you could log on to yourself) by using the AdWords API to basically create their own interface.
Through an API, you can do some really cool things. For example, you can automatically update your bids, keywords, ad text, etc. No need to wait for your AdWords rep to upload the changes for you, or to even create bulk sheets. You can basically have your computer talk to Google’s computers and get this done instantly.
You can also “commingle” APIs to create a universal view of many search engine campaigns. Bid management companies can use APIs from Google, Yahoo, and MSN to create one page where a user can make global changes to all of their campaigns at once. For example, let’s say you are expecting a really strong day of performance next Saturday across all of your campaigns. Instead of going to each search engine individually and adjusting every one of your bids by 20%, you could go to a bid management tool and simply enter in a command like “increase all bids on all search engines by 20%.” That’s a huge time-savings.
In essence, for the average user, APIs enable companies to develop tools that reduce a lot of manual processes and enable you to manage several search engines at once.
But Google wants to change that. In Early April, Google announced changes to their AdWords API terms and conditions. There were really two basic changes: 1) that Google would start charging for API usage; 2) that Google would not longer allow bid management companies to intermingle Google data with other search engine’s data.
The reaction from the SEM community has been, well, misguided, simply because the emphasis has been on Google charging for its API rather than Google changing the way bid management companies use Google data.
You see, up until now, using the AdWords API was free for everyone. Depending on your monthly spend with Google, you got a certain number of free “operations” (or uses) of the AdWords API. After you exhausted your quota of operations, you were out of luck.
Now, everyone has to pay the same amount for their API usage. Whether you spend $1 million a month with Google or $15, according to the Google announcement “AdWords API token holders will be charged a nominal $0.25/1000 quota units consumed. As a result, current developer quota caps will be removed in order to provide a more flexible and scalable system for quota allocation and consumption.”
Naturally, a lot of people were upset to being paying for something that was once free. To quote some of the responses on the AdWords API discussion board: “this reeks of “Bait & Switch” and hate to see a company like Google get into such cheap practices. You initially provided the API free of cost to us. Now that we have built all our systems around it and has kind of become indispensable, you are turning around and going to charge us for it” and “Man this is so low … a multibillion company squeezing a few dollars out of the folks who are acquiring customers for the adwords program which in turn gives them an even higher profit and more customers” or “You have to be kidding me, charging us for API usage is crazy….Google you’ve really done it this time. If you guys indeed follow through with this we’re leaving.”
To an extent, I agree with these posters: Google doesn’t need the money and the “nominal” charge is only really nominal from Google’s perspective. A small company that is suddenly hit with an additional $2000 or $3000 a month of costs will not call that “nominal.”
In general, however, I don’t see Google’s new pricing plan as an evil money-grab by Google. In fact, I actually see two positives to Google charging for API usage. First, it is a democratic approach to the API. In other words, the more you use the API, the more you pay. If you only need 1000 operations a month, you only pay $.25. But if you need 50 million, you pay a lot more. Under the old system, your API quota was directly tied to your spend on Google, so a company with a small Google budget could get more quota, even if it was willing to pay. This gives everyone the opportunity to use the API as much or as little as they want. And frankly, I don’t think a $.25 CPM is that unreasonable. Most companies should end up paying less than $1000 a month.
Second, charging for the API creates an incentive for API developers to use the API efficiently. As noted by RohitJ on WebMasterWorld: “it might be less about revenue and more about restricting resources. in weeks past, we’ve seen quite a number of articles in the press citing google’s concern over expensive computing power being consumed amongst their programs, from google earth to adwords. even google feels the burden of huge costs associated with running multiple datacenters–and such costs need to be passed on.” I think this is right (I also wonder if “RohitJ” is actually Rohit Dhawan, the product manager at Google for the AdWords API . . .). If Google doesn’t put a price on usage, there will undoubtedly be folks who use as much as they can simply because it’s free. Under this new system, there is an incentive to be more efficient, because sloppy API use will cost you money.
So I don’t think Google charging for its API is the big deal here. The big deal comes with respect to the second point. Read this language from Google’s new Adwords API terms and conditions: “The AdWords API Client must not show in the same area of a page, or otherwise visually or functionally associate, any input fields for collecting or transmitting AdWords API Campaign Management Data with the content of Third Parties or input fields for collecting or transmitting data to Third Parties. For example, an AdWords API Client must not (a) use the same input field or button to collect or use data that will be used as both AdWords API Campaign Management Data and also as data or instructions for a campaign on a Third Party advertising network, or (b) use input fields or buttons to collect or use data for AdWords API Campaign Management Data which are visually adjacent to input fields or buttons that are used to collect or use data or instructions for a campaign on a Third Party advertising network.”
OK, I recognize that was a lot of legalese, but let me translate it for you. What this basically says is that a bid management company cannot create functionality to enable its users to manage Google and Yahoo Search Marketing campaigns at the same time. Take a look at the Atlas screenshot below:
As you can see, this tool allows you to make updates to all of your SEM campaigns from one page. Under the new AdWords API rules, Atlas will not be able to show you this page. Now, Atlas will have to have one page for changes to AdWords and another for changes to all other SEM campaigns. So managing your campaigns through a 3rd party bid management tool suddenly becomes much more inefficient.
As you continue reading the AdWords API T’s and C’s, you’re hit with another whammy: “Any information collected from an input field used to collect AdWords API Campaign Management Data may be used only to manage and report on AdWords accounts. Similarly, any information or data used as AdWords API Campaign Management Data must have been collected from an input field used only to collect AdWords API Campaign Management Data. For example, the AdWords API Client may not offer a functionality that copies data from a non-AdWords account into an AdWords account or from an AdWords account to a non-AdWords account.”
Again, allow me to translate: information from AdWords cannot be used to benefit non-Google campaigns. For example, wouldn’t it be cool to be able to “cross-pollinate” your Google campaigns with your Yahoo keywords and vice-versa? Unfortunately, this provision of the AdWords rules explicitly ban this tool. If you want to transfer Google keywords into your Yahoo account, you can’t use Google’s API to do this. If you have hundreds of thousands of keywords to transfer, and you can’t use your bid management tool to this, you are up the creek without a paddle.
And now for one final legal requirement: “You agree that Google may inspect your AdWords API Client user interfaces up to 3 times per calendar year. Any such inspection must be during normal business hours. You must allow Google to visit your place of business, or inspect your AdWords API Client in some other manner agreed between you and Google, within 7 days after notice from Google that Google desires to inspect your AdWords API Client interfaces. Google’s inspection shall consist only of a thorough walk-through with Google of each screen in your AdWords API Clients on which AdWords API Data is displayed or inputted. At the conclusion of such inspection, you shall provide Google with a signed certification that you showed Google all such screens.”
Translation: if you have created a third-party bid management tool, and you’re using the AdWords API, you are required to let Google “inspect” your entire bid management tool (and come to your office). So let’s say that you’ve developed some really cool proprietary technology. You’ve spent five years building your system and you charge your clients $100,000 a month to use your software. The last thing you want to do is to invite Google to your offices and show them how your system works.
I’m not saying that Google has created this clause to steal 3rd party companies’ technology; clearly, the point of this rule is to police 3rd party tools to make sure that the rules are being followed. But talk about hubris! How would you feel if you bought a computer and the computer manufacturer demanded that they be allowed to visit your home three times a year to make sure you weren’t illegally downloading music? Big Google is watching you!
So, at the end of the day, the SEM community should not be upset that Google is charging for the AdWords API. If anything, if you feel that Google is bilking the SEM community, you should be far more concerned with Google’s non-transparent bidding model than a nominal charge for API usage.
The real concern here is that Google is basically throwing its weight around at your expense. By restricting 3rd party technology development, Google is trying to maintain it’s dominant position in the market by creating barriers to efficiency. I hate to use the “M” words here, but this sounds like something a “Monopoly” or “Microsoft” would do. And that’s a much graver concern than charging a few pennies here and there for API usage.