Kongregate Developers

Marketing Viability: When Should I Consider Paid User Acquisition?

Have you been working tirelessly on your game towards a global launch, but haven’t thought about how you’re going to market it? If not, then now is the time to start thinking about that imperative marketing plan. In the past few years, the mobile games market has become increasingly saturated -- making the barrier to entry and chances for failure higher, as people are inundated with new games every day. What this means is, marketing your mobile game will be even more crucial than ever to its growth and visibility in the marketplace.

So to get you started, here are some tips on how to create, implement, and evaluate an effective marketing strategy. While every game is different, these basic steps provide a great starting point to determine if your game is a candidate for scaled marketing.

  • Build a Marketing Roadmap
    • Start by creating a marketing plan to keep you focused and involved in accomplishing specific marketing objectives within a set time frame. A timeline will help make your long-term objective more achievable, as well as enable you to focus on the bigger picture when the day-to-day work feels tactical and menial.
  • Set Objectives
    • Align objectives and KPIs with Production/Development before diving headfirst into a plan of action. Consider the following business metrics the game is expected to achieve within the period your marketing plan will cover. It could be player retention, monetization rates, session length, IAP transactions, events, and/or other metrics of success.
  • Determine Target Audience
    • Identifying your target audience means getting the results you want, without wasting time and losing money on pushing the game to an audience with little interest in your game. If you don’t know where to start, take a look at your competitors to see where they’re investing the most effort, and do some quick market research on your potential players. If you run Facebook ads, Facebook Analytics will help provide more color about your users.
  • Find the Right Channels of Distribution
    • Research to determine your best sources of distribution. For those with considerably smaller budgets, decide on how and where you’ll acquire users utilizing all your owned and earned resources such as social media, email, and PR coverage before ultimately diving into paid advertising. Investing in the wrong marketing channel can be an expensive mistake, but secure channels to start are Facebook and video gaming networks where quality traffic and target audience are more aligned. Here’s a list of strongest performing networks to consider when testing paid marketing.
  • Marketing Analytics
    • Before you start to execute your plan, you’ll need to set up the right tools and services to track, analyze, and report your marketing performance. For mobile marketing, it’s very important to have a good attribution provider.
    • Attribution analytics tools such as Adjust or Kochava will measure where users are coming from, what your highest performing sources are, what your users do in your game, when they pay for something, when they leave the app, etc.
    • App store analytics such as AppAnnie and SensorTower are platforms that give you information on what happens when users enter the app store and how well your game performs within each app store.
  • Pre-Launch
    • Get a head start with ASO, choose your keywords, write a compelling description, test icons and screenshots, and A/B test your app store page to find the best assets that bring in the highest conversion. Compare your page to other top apps in your space and keep trying out new ideas.
    • Creative assets are actually much more important than most people think, but often don’t get the needed attention. A strong mobile game marketing strategy should consider doing a lot of creative testing as early as possible. Here’s why: The appeal of your assets will determine your cost per install (CPI) in the market and your ability to grow your game when it comes time to consider paid marketing.
    • As you create assets for your game, make sure to A/B test them against each other to find the combination that drives the best results by running some ads. For example, if you have an RPG game with a core art style, consider testing them against a more casual style to see which variation has better conversion. Test everything from themes, characters, composition, to messaging. Often through testing, you’ll identify what creative types and characters people like the most and iterate on those. This process also helps weed out creatives that users may find unappealing prior to a release on a large scale, and ultimately lowers your cost per acquisition.
    • In general, your genre and art style will heavily influence your CPI and fall in these 3 buckets: casual, midcore, and hardcore. Identify where you are in this range and try to predict what the market expectations are for your game by running art tests with this general rule in mind: CPI increases as the game becomes more core themed.
  • Determine if Paid Acquisition Works for Your Game
    • Testing during soft marketing is key to figuring out if marketing your game is viable. In this stage, we’ll need to gather an upstream user acquisition funnel and connect it to a downstream in-game performance funnel.
    • Paid user acquisition works when the following proves true: The average lifetime value (LTV) of your users exceed the cost of acquisition (CPI) to acquire a user into the game. As a reminder:
      • LTV = Expected Life x Average Revenue Per User (ARPU)
      • CPI = Impressions x Click Through Rate (CTR) x Install Rate (IR)
      • Player LTV > CPI = Success
      • If user LTV does not surpass CPI, focus on pulling all the levers to bring LTV up or CPI down. Keep testing until this simple equation works out for you. Continue to get a sense of what the conversion rates are in each step along the funnel and the churn rate. If it’s not too far off, then it’s worth spending time trying to make the metrics work out through creative testing, landing page optimization, increasing conversion along the steps of your funnel and trying to optimize your traffic sources.
  • Global Launch
    • You should have a solidified marketing strategy of all your planned activation channels at launch.
    • Update the app store listing with all your best promotional graphics, screenshots, and videos trailers.
    • If your game is featured, congrats! This will provide a strong push of installs for the first 7 days, but it's tough to count on. Allow roughly 4 weeks, though it can be longer before your game establishes an organic baseline of installs.
    • Hopefully, you’re confident of the game’s expected lifetime value (LTV) by now, and it’s time to set goals to acquire as many users as possible at or below that LTV. Begin by testing out networks without commitment to your full budget, then run a test campaign with each network and acquire approximately 1000 users. Compare the lifetime value of those users to your original estimates and revise your CPI accordingly.
    • Keep testing and iterating until you have the best possible marketing mix.

Author

Linh Le

Linh is a Senior UA Marketing Manager at Kongregate, where she manages performance marketing and promotions across mobile and web for a number of top titles, including Animation Throwdown and AdVenture Capitalist. She loves wine and cheese, pugs, and traveling.

Burrito Bison Q&A with Juicy Beast

Burrito Bison is one of the most popular series on Kongregate, and we're proud to be publishing the third game in the series, Launcha Libre, available now on web, Android, and iOS.

We could say that this Q&A is in celebration of this week's massive 2.00 game update, but really, who needs a special reason to talk about the awesomeness of Burrito Bison?

Q. What pushed you to become indie developers and how did you all meet and form the core team at Juicy Beast?

A. It all started back in school, circa 2009, where we had to create a valid business plan for a fictional company. We even had to find a real office that was available for rent. My business plan got the teacher’s attention and I received a lot of comments telling me that I should give it a try for real.

So I contacted my good friend Dom, who had been working at Gameloft for a year since he finished school before I did, and asked him if he wanted to quit his job to start an indie studio based on my ridiculous business plan. He said “Yeah, sure.”

We then worked for months on nights and weekends on that over-ambitious business plan, found some funding with the help of family and friends, and hired two really talented guys to help us out. One of them was our programmer Alex, a friend who studied Multimedia Integration with Dom and I, and the other one was JP, who just graduated from traditional animation in Montreal. Actually, we all just graduated from school, and only Dom had 1 year of work experience.

We legally created the company, rented that same office we spotted during school and started working on our very own game, Gobtron, on June 1st 2009. We never worked together before that, except for Dom and I. The chemistry among ourselves turned out to be amazing and pretty much all of our games managed to get featured on front pages at the time. At least we had that working for us, since we didn’t really knew how to make money. It took us a year or two to really understand the Flash market and start making decent money to survive on our own.

7 years later, we’re still the same 4 friends and we’ve released more than 15 games over a large variety of platforms, ranging from mobile to consoles!

Q. You have a very small team at Juicy Beast even though you’ve been developing for quite awhile. Is there a reason you keep your team so light? Have you found advantages and/or disadvantages to your team size and dynamic?

A. I think the first reason is because we work well with each other, and we managed to strike a perfect balance of responsibilities between the 4 of us. It also makes things a lot easier to manage, as projects tend to be smaller. It’s easier and faster to make changes and adapt to whatever a game grows to be.

A disadvantage would be that we’re limited in terms of scope. We can’t make huge games without taking years to finish them. We really enjoy creating fresh new things, so working for more than a year or two on the same project takes a toll on our creative inner child.

Q. What game has been your favorite to work on and why?

A. I think we were fortunate enough to only work on games we enjoy working on. They all started from an idea that we were really into in the first place, so working on our games always felt fun and natural. Some of them offered more challenges than others, either technically or emotionally, but we’ve never started a project without wanting to do so.

To answer the question more directly, I’d say the whole Burrito Bison series because it’s so weird that it’s easy for us to add pretty much anything we want. We don’t really care if it makes sense or not. If it’s fun and related to candies/gummies/Mexican culture, then it’s good to go!

Q. Who originally came up with the concept for Burrito Bison and the gummies?

A. Burrito Bison started out as a runner, and not a launcher. It was also supposed to be heavy metal related (took inspiration from Brutal Legend at the time), and it was about a metalhead trying to get his stolen tickets from a sold-out metal show in hell. You were supposed to run in the crowd and body-surf your way through certain parts, etc. You can see that the base mechanic was partially there already.

After months of prototyping and iterations, we couldn’t get the gameplay right. It just wasn’t fun. Then we faced an ultimatum; we had to either kill the project or turn it into a known genre to avoid losing all the money we had invested up to that point. We were trying to make something new and original, so making a launching game felt like a failure at first.

So after hours of debate, we opted for the launching game. Strangely enough, everything started to feel right as a launching game. The core mechanic started to be fun again, and new ideas were pouring out. We literally saved the game at that point.

The luchador / candies theme then came from a particular sketch JP made for the metalhead guy. We were trying to figure out the stance he’d make while jumping in the crowd, and JP drew him as a luchador just for fun in a small corner of the page. We laughed so hard that we decided to throw all that “seriousness” out the window and go with the luchador instead.

We also wanted to have gore elements, enemies exploding with guts and everything, but we wanted to avoid blood. That’s where the gummy bears came in. We could make them explode, rip apart, etc., and it would stay enjoyable for all ages. The Mexican / candy mash-up didn’t really make any sense, but we didn’t care anymore. It was funny and we had to push that game ASAP!

Q. Was Bison’s personality inspired by someone specifically?

A. We knew we wanted gummy bears to explode. Once we gave Burrito a reason (get his stolen wallet back) to hate the gummies, it just felt natural to make him angry and really motivated to smash as many of his enemies as possible. So he’s not based on anyone in particular; he’s just shaped by his motives.

Q. Who is your favorite luchador or professional wrestler?

A. Ironically, we’re not big wrestling connoisseurs. We don’t know that many luchadores, apart from Rey Mysterio, Blue Demon and Santo. I personally really like Shinsuke Nakamura for his style and eccentric personality! Oh, and for his theme song.

Q. You’re well known for being an indie developer, so why did you decide to work with us on Burrito Bison: Launcha Libre? Was the development process or experience different working with a publisher?

A. Publishers in general tend to have a bad rep among indie devs for various reasons, like loss of control over your creative vision, etc. We’ve never really dealt with a publisher before, but knowing Kongregate since our early Flash days, we knew we liked working with you guys. On top of that, BB:LL was our very first, true free-to-play title and it was obvious we’d benefit a lot from Kong’s expertise on the matter.

We’d totally recommend partnering up with Kong to other indie devs, as the whole process has been super smooth for us. Not once did Kong interfere with what we wanted to do, but only advised and suggested things at most. So technically, working with a publisher for BB:LL didn’t change much compared to our usual methods. At best, it’s been more structured and easier, not having to take care of all the publishing aspects for once!

Q. A new update just launched today; could you tell us about any cool new features and maybe give us some hints about what might be added in the future?

A. We added a lot of stuff to this one! The main feature is probably the ability to Time Travel, which consists of starting over the game while keeping some of our new upgrades intact. This means that you’ll be able to reach further faster every time you time travel. Let’s see how far you can get now!

We also made it possible to upgrade all your launchadore upgrades passed their limit, infinitely. That’s right, infinitely. Just imagine how buffed you can be!

The update also introduces a brand new mission system! Completing missions will award you with very important rewards, while making you feel productive.

We also added new delicious recipes for your to unlock (and cook), as well as a brand new launchadore! Only the best cooks will be able to find it, though.

Finally, we’re introducing the mysterious “???? Shop”! A new place for you to spend any extra recipe pieces you might have lying around in your pockets. You’ll be able to unlock crazy new stuff, like new special gummy bears, or even game modifiers, like manual launchador selection, reverse gameplay (right to left) and a zoomed-out camera!

Oh, almost forgot, we added cloud saving too, so you can start a game on one device and continue on another. :) As far as hints for new content, we’ll have to wait and see what players are requesting first.

Get Active with Our Favorite Fitness RPG, Pocket Plants

Green thumbs rejoice! We’re happy to announce the launch of Pocket Plants, an addictive collection game where you can grow, evolve, and mutate adorable plants while getting in shape with the innovative step-tracking energy system. We partnered with the talented team at Shikudo to bring their latest fitness-minded game to iOS and Android.

Fitness enthusiasts of every level will enjoy Pocket Plants' charming art style and hundreds of quirky plants to grow and collect. Get extra energy to grow new plants by walking, thanks to the game's step-tracker energy system. Then combine, upgrade, and mutate your plants to unlock dozens of cute new seedlings to add to your collection. Explore 3 unique worlds: Greenbelt, Desert, and Sea, each filled with its own adorable plants to discover.

Encouraging players to adopt and maintain a healthy lifestyle is top priority for Shikudo studios. Their previous game, Wokamon (a joint effort with renowned designer Okayboss), was so successful at getting players to be more active they found that 60% of players doubled their workout sessions after just two weeks of playing. They hope to continue that success with Pocket Plants.

Start growing your own Pocket Plants free today on iPhone, iPad, and Android. You can find additional information about the game at Shikudo’s website and get the latest news on the official Twitter and Facebook accounts.

Good vs. Evil: How Will You Rule?

We’re excited to announce that Realm Grinder, a player favorite on Kongregate.com, is now available on iOS and Android! We teamed up with Divine Games to bring the deep idle RPG to more players around the globe and are ready to know... Will you choose good or evil?

You’ll start by choosing a side -- will you be a benevolent ruler or a cruel tyrant to your subjects? Your choice will unlock unique buildings to grow your realm faster. Realm Grinder is a seemingly simple idle game at first glance, but quickly becomes very deep and offers hours of play with thousands of upgrades and achievements to collect.

Further adding depth and strategy to the game are the many alliances you can choose, from fairies and elves to goblins and demons. Each faction offers its own distinct play style. Will you align with the elves, who reward tapping for treasure, or the demons, who give massive bonuses to the most powerful structures?

Realm Grinder originally launched as a web game on Kongregate.com in May of 2015 and quickly became a hit on the site with more than 1 million plays in its first 2 weeks, several of those play sessions coming from our staff. So we took notice! Over the past year, we’ve been working closely with the expert team at Divine Games to introduce a streamlined UI and new artistic direction to the Flash game, and now we're happy to be releasing it for mobile players.

And now that Realm Grinder is available on mobile devices in addition to web, players can continue their progress across devices, no matter where they are. Start your journey to becoming the richest ruler in the realm today on iOS, Android, and Kongregate.com!

Looking for more idle games? Check out two of our most popular idle games on mobile, AdVenture Capitalist and Pocket Politics, or read our in-depth series on the The Math Behind Idle Games.

Unity WebGL Memory and Performance Optimization

Many Unity developers have taken the plunge and started exporting WebGL versions of their games. Unfortunately, many of them also run into issues that can lead to performance degradation and instability. This is a particularly tricky problem on older machines that have less resources available.

This article will outline several techniques for resolving some common WebGL performance issues we’ve seen with games published on Kongregate, and hopefully get you off to a good start when it comes to delivering a great plugin-free experience with your WebGL game.

Measure Twice, Optimize Once

One of the most common mistakes developers make when trying to optimize content is making assumptions about what is taking up lots of time or space. With Unity and WebGL this happens often when deciding how much heap space to allocate for the WebGL application in the player settings. Without doing research on the subject, it can be easy to assume that increasing the memory available to the application will lead to better performance. In reality you generally want to allocate the smallest amount of memory possible, which can be counter-intuitive.

Reducing the size of the heap can greatly reduce or eliminate the number of “The browser could not allocate enough memory for the WebGL content” errors your players see, but how do you know what to set it to? Luckily, you can get a pretty good feel for how much memory your application is using with a simple JavaScript snippet which you can either paste into the browser console (for ad-hoc debugging), or as a permanent addition to your index.html template:

setInterval(function() {
  if (typeof TOTAL_MEMORY !== 'undefined') {
    try {
      var totalMem = TOTAL_MEMORY/1024.0/1024.0;
      var usedMem = (TOTAL_STACK + (STATICTOP - STATIC_BASE) + 
                    (DYNAMICTOP - DYNAMIC_BASE))/1024.0/1024.0;
      console.log('Memory stats - used: ' + Math.ceil(usedMem) + 'M' + 
                  ' free: ' + Math.floor(totalMem - usedMem) + 'M');
    } catch(e) {}
  }
}, 5000);

This will output the amount of used and free memory into the console every 5 seconds, like so: Memory stats - used: 155M free: 37M. With this very simple addition, you now have some insight into how to tune your heap size, which is fantastic. You can watch these numbers as you play your game and get a feeling for what you should cap your memory usage at. Be careful not to lower it too much, though, or you’ll start seeing memory allocation errors that tell you to increase your heap size.

A Note on Dynamic Heap Sizing

When searching around for solutions to out-of-memory issues, you may stumble upon an Emscripten flag called ALLOW_MEMORY_GROWTH, which sounds like the perfect solution to your woes. These days enabling this flag can have a negative impact on performance, and it can also cause out-of-memory issues, as the memory manager has to allocate even more space when trying to grow the heap. The Unity team has never recommended enabling this flag, and we do not recommend it either.

Smoothing Out Initial Loading

When using Unity 5.3 and above, your game assets will be compressed with gzip by default, and will have a gz prefix on the filenames. As described in a previous WebGL blog post, if you upload these to Kongregate, we will automatically set the Content-Encoding: gzip header so that the assets can be decompressed by the browser instead of JavaScript, leading to a much better loading experience.

However, if you are hosting your game externally, you will need to manually ensure that the assets are being served with the correct encoding. You will know if this is an issue because Unity will log messages like Decompressed Release/MyGame-WebGL.jsgz in 500ms in the console, the browser may appear to lock up during loading, and your progress bar will not work properly.

If you are using apache or a compatible server, you can use the .htaccess file that Unity generates for you to resolve this issue. However, if you are hosting on S3 or something similar, you can force the encoding by changing the filenames in your index.html to add the gz suffix, like so:

var Module = {
    TOTAL_MEMORY: 201326592,
    errorhandler: null,
    compatibilitycheck: null,
    dataUrl: "Release/MyGame-WebGL.datagz",
    codeUrl: "Release/MyGame-WebGL.jsgz",
    memUrl: "Release/MyGame-WebGL.memgz",
  };

You will also need to ensure that S3 is set up to send the Content-Encoding: gzip header for each of the files that end in gz, or you will get decompression errors upon loading the game. You can use the browser network inspector to ensure the header is being sent properly by the server.

Optimizing Asset Loading

Another unexpected source of performance problems is caused by loading asset bundles. For Unity versions lower than 5.5, asset bundles are compressed using LZMA by default. Decompressing the LZMA content for WebGL builds causes a very noticeable pause. These pauses not only make your game run very poorly, but can bring up the dreaded “this content is not responding” error dialog. Luckily, Unity 5.3 and above support the faster LZ4 format for asset bundles (and it is the default for WebGL in 5.5+), so you can resolve this issue relatively easily.

It should be noted that LZ4 assets can be a bit larger than LZMA, but the tradeoff is generally acceptable. If it is not, you can use gzip compression on top of the asset bundles, and serve them with the Content-Encoding: gzip header (like mentioned above) to have the browser decompress them automatically.

One of our developers was kind enough to share the C# code they’re using in their build script to enforce LZ4 compression for WebGL:

BuildAssetBundleOptions options = (buildTarget == BuildTarget.WebGL) ? 
                                  BuildAssetBundleOptions.ChunkBasedCompression : 
                                  BuildAssetBundleOptions.None;
BuildPipeline.BuildAssetBundles(bundlePath, buildMap,  options, buildTarget);

Keep Up on Unity Patch Releases

The Unity team releases patches for supported versions of Unity frequently. Keep an eye on them and see if any of the WebGL-related changes might resolve issues you are experiencing.

For example, Unity 5.3.6 patch 6 resolved an issue where WebGL builds were allocating much more memory than needed, which is definitely a bug you’ll want to have fixed when you build your game. If upgrading is not a viable option, they also generally have you covered with workarounds. In this case, you can reduce your footprint on lower versions with the following build setting:

PlayerSettings.SetPropertyString("emscriptenArgs", 
                                 " -s MEMFS_APPEND_TO_TYPED_ARRAYS=1", 
                                 BuildTargetGroup.WebGL);

Other Resources

  • Read the Unity Blog and documentation religiously -- such a vast amount of knowledge is available there. Many of the concepts in this article are discussed in much more technical detail here, for example.
  • Check out this Kongregate Developer Blog entry focused on managing in-game memory for Unity WebGL projects.

Author

Ben Vinson

While studying for his B.S. in Computer Science from the University of Colorado, Ben was a major contributor to the book Software Engineering for Game Developers.

After graduating, Ben started work as a game developer at Electronic Arts. He was also the creator of the Leeroy Jenkins video, which is probably his greatest achievement to date.