We have many apps built from a common source base. In practice, it is much easier to keep these bound to a single unity services project.
However, the users between the apps are highly disjoint sets.
Will there be an impact on ad revenue if we use the builtin ads support in all apps, versus using a different Unity Ads Game ID, the plugin, and manually initializing the game id per game.
Alternatively, is the recommended flow to just bind and re-bind the game ID in unity services before building each game (which is really just a few lines of changed text in the unity project settings, and can be cached off and copied over prior to build.)
1 Like
Correct, you should use separate Ads game ids for each game, e.g. for following reasons:
- Allows us to better target the ads shown in each game, otherwise they would just look the same to us, even if they might have different target groups
- If you are building games targeting different age groups, you would need to select lowest common age for filtering ads if only using one game id
- Allows you to better track revenue from individual games
And correct, you should also rebind the project as such to get a new project guid, as this is used for other Unity services like Analytics, again allowing you to get analytics data for each game. And as you say, you can cache the ProjectSettings/UnityConnectSettings.asset file for each “game” and copy that in as part of build process.
Hope it answers your question.
/Rasmus
1 Like
For analytics and crash reporting we eventually gave up and just used segments to track users per-app. It’s extraordinarily hard to have confidence is anything UCB is doing to make your SKUs, and adding a step that modifies UnityConnectSettings (which in turn does appear to modifyProjectSettings.asset) just pushed us beyond the level we were willing to believe was supported. If there were an official, documented UCB way to handle this, we’d feel more confident in having it in production. It’s just too hard without source code to say "if I copy these assets in my cloud pre-build step (how? using file APIs? Using AssetDatabase APIs?) Unity will build and init correctly per-product.
Re-initing ads with different game IDs works fine if using the AssetStore ads library, but if you’re going through the hassle of that you might as well integrate a mediation SDK as it’s about the same amount of work.