I am developing an XNA game for Windows Phone 7 and 8. The game is level-based. After finishing each level a screen comes up with a bit of stats summary. I wish to embed an ad in this screen, on which I expect users to only spend a few seconds on after each level.

The ads I am using are Microsoft's pubCenter ads and AdDuplex as a backup.

Should persist instances of these ads throughout the game's operation and only make them visible on level completion? Or should I create new instances every time they are needed and destroy them once I don't want them anymore for each level?

My worry is that starting up an ad on a screen which is intermediate and lasts for a short while might not be enough time for an ad to download. On the other hand, having one or more ads running continuously in the background might not be a good thing for battery or performance.

  • 4
    \$\begingroup\$ Try testing this out. Seems like something that is easy to test and compare notes on. Safest bet is to have one persist if you are worried about load times. All devices will vary on load times. See if it cuts deeply into battery/performance. If it does, come up with a more complicated answer to the problem (Like predicting when a level is almost done and kicking off an ad load ahead of time). \$\endgroup\$ Jun 19, 2013 at 19:32
  • 2
    \$\begingroup\$ Can you kick of the download of the ad when the level starts and store it for later? I would be supprised if there is not some pause/resume functionality for the ads. \$\endgroup\$ Jun 19, 2013 at 19:52
  • \$\begingroup\$ There isn't, and some ads SDK will throw exceptions if they are active but hidden. \$\endgroup\$
    – user26471
    Jun 19, 2013 at 20:32
  • \$\begingroup\$ What about loading the ad in a 1-pixel element, or hidden outside the screen, so it loads but doesn't display? \$\endgroup\$ Jun 20, 2013 at 0:20
  • \$\begingroup\$ What i see most games do is start loading it on the "end" screen of the level. When the player reads his stats etc. the add will popup once loaded. When the player presses next/retry level you get a blank screen where you have to wait for the add once it's loaded i can continue. Normally i never wait for adds that long. You could add a timer on this screen so when the add does not load in 5 seconds the user can skip it anyway. \$\endgroup\$
    – Madmenyo
    Jun 25, 2013 at 12:51

1 Answer 1


I'd recreate them every time they are needed.

You are right to be concerned about the downsides of both choices, but in the end, you should err on the side of being less user-hostile. Having the ad constantly active in the background (assuming that the ad cannot be downloaded and then "suspended" until needed) will cause unnecessary processing during your games runtime, and the potential impact on performance and the user's battery life is almost certainly going to be worse in the long run for you than the potential impact of an ad not downloading fast enough and consequently not displaying long enough for the user to comprehend it (or see it at all).

If your levels are linear enough you can start to pre-load the ads as the user nears the end, if such capability is provided by the API and does not violate any usage terms you may have agreed to.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .