4 Days Until Win 8: Show Me the Money

The way you deliver a Windows Store App is different from how Windows 7 (and prior) applications were delivered. The idea of delivering a Windows Store App on a disk is…pretty much gone. Rather, there is a Windows App Store that you can put your application into to distribute. You can also package and distribute applications more locally; however, if you are going to sell your Windows Store Application, chances are you will be going through the store.

Getting an application into the store is a topic I'll save for another day. The focus of today's blog entry is more about the opportunity to make money from an application in ways that were more reserved for the Web and for the game industry. Of course, you can continue to charge for an application. It is possible to put a price on your application and sell it outright. However, you have two new opportunities; in app offers and advertising.

In the first Windows Store App that I built, I choose to give the application away for free. Instead of putting a price on the application, I chose to put an advertisement into the application using the Microsoft Ad SDK.

My application is a game. If my application is downloaded and used enough, then I'm likely to add “in app” offers for extra game boards. I’ll offer those for a small fee. In the meantime, I'll simply use an ad unit to try to drive revenue. Ads make an interesting way to drive revenue provided you believe your application will be used by a lot of people and for longer periods of time.

How much revenue can the ads drive in my application? The answer to this is likely to change. It will also vary by what ad SDK and ad company I use. Using Microsoft's PubCenter service with the Ad SDK, I expect to make about four cent for every thousand times an ad is displayed. That is not a great amount of revenue (4 cents per eCPM), but if people use the application, the pennies will add up. Additionally, ads refresh over time, so it is likely that multiple ad views will be obtained for each time the game is played.

To add ads, you need to install the ad SDK, add the code to your app, and then set up an account to have ads served to you.

Installing the Ad SDK

The first step to using ads is to download the Microsoft Advertising SDK. After downloading the MSI file, you can choose to run the file. This will cause a simple install process to happen. This install is simple enough that I don't feel the need to detail it here.

Adding Ad Code

Once installed, the next step is to add and AdControl from the SDK to your application. Before you can do this, you need to add Internet Client capabilities to your application if you have not already. This is because you are serving ads via the Internet. To add Internet Client capabilities, you'll use the Solution Explorer to find the Package.appxmanifest file in your application. Once you select this, you'll be able to use the Capabilities tab to select this by checking the box next to Internet (Client).

It is very important to note that because you just added Internet capabilities to your application, you will have to also make sure you add a privacy policy to your application. If you don't, your application will not pass the certification process. More than one person has run into this issue in submitting apps to the Windows App Store. While your application isn't necessarily collecting data, you still have to declare what you are doing.

Once you have the Internet Client capabilities added, you next need to add a reference from your application to the Microsoft Advertising SDK for Windows 8. Right click on References in the Solution Explorer and select Add Reference... You should find the SDK under Windows --> Extensions provided you installed the SDK.

With the SDK now referenced, you can update the code in your application. In a XAML-based application, you'll need to add the following namespace reference to your XAML file:

xmlns:UI="using:Microsoft.Advertising.WinRT.UI"

This will generally be added above the x:Class reference.

With the references in place, you should now be able to drag an AdControl from the Toolbar onto your XAML file. This will add XAML similar to the following:

<UI:AdControl 
ApplicationId="testclient" 
AdUnitId="ADPT44" 
HorizontalAlignment="Left" 
Height="250" 
Margin="37,39,0,0" 
VerticalAlignment="Top" 
Width="250"/>

Adding an Ad in Visual Studio

With this basic code added, you can compile the application and run it. You'll see a 250x250 ad in your application. You should note, however, that this is a test ad and that you are not yet displaying real ads. You'll need to add an ApplicationId and AdUnitID.

Windows 8 App Ad

Setting up an Microsoft Pub Center Account

To set up the ApplicationId and AdUnit ID so that you can have real ads sent to your application, you need to create a Microsoft Pub Center account. Once you set up an account with the pubCenter, you'll then have what you need.

I could walk through the steps to set up a PubCenter account; however, the following PDF does a pretty good job:

http://advertising.microsoft.com/wwdocs/user/en-us/foradvertisers/Windows-8-PubCenter-Setup-Microsoft-Advertising-US.pdf

What you'll learn is that you can go into the Setup tab of the PubCenter and register an application to receive ads. Once you register the application, an application ID will be assigned. This is the ID you'll use in your application.

With the application registered, you'll be able to set up the ad units you want to use in your app. You'll give each a name to identify it. You'll also select the size of the app and the App Store category your app fits:

Microsoft PubCenter

There are a number of standard ad sizes you can use in your application. This includes:

  • 300 x 250 (Medium rectangle)
  • 728 x 90 (Leaderboard)
  • 160 x 600 (Wide skyscraper)
  • 250 x 250 (Square pop-up)
  • 500 x 130 (Split view banner)
  • 292 x 60 (Default snap view banner)
  • 250 x 125 (Half tile)

Making Money with the Microsoft Ad SDK

Adding Ads is not very hard. If you expect your application to be popular, then with time, the display of ads can lead to making pennies, nickels or even dollars. If you choose to add a fee to your application, one option you have is to create a trial version. You could choose to add ads in the trial and state that they will be removed in the paid edition. This gives you a way to make money whether the person uses the trial or the paid version.

Ultimately, it is up to you to decide how to make money in your applications. With Windows Store Apps, Microsoft has made it pretty easy to use Ads. The one thing I'll reiterate — if you use ads in your application don't forget to include a privacy policy. You'll need it to pass certification.

# # #

Your Idea. Your App. 30 Days
Get daily guidance from Generation App for building Windows 8 applications.


About the Author

Bradley L. Jones

Bradley Jones can be referred to as a webmaster, coding grunt, developer, analyst, director, Editor-in-Chief, Community Leader, and various other things. His focus is often in technology with a special interest in the area of the big "C"s -- C, C++, and C#; however, his experience includes development in PowerBuilder, Visual Basic, some Java, ASP.NET, COBOL I/II, and various other technologies. He has authored more than 20 books including Windows Live Essentials and Services, Web 2.0 Heroes, Teach Yourself the C# Language in 21 Days, and an update of Teach Yourself C++ in 21 Days. He is the founder and previous president of the Indianapolis .NET Developers Association which is a charter INETA group with membership of nearly 3000. Brad blogs at http://blog.codeguru.com/blog. You can often hear is ramblings on the CodeGuru.com or VBForums discussion forums.