Saturday
24Oct2009

What are players doing in a three week old virtual world?

We've been pretty quiet on the blog for the last two months. But, don't panic, we've not been kidnapped, we've just been busy launching a new virtual world for girls, Brit Chicks

The launch has gone great. In the 3 shorts weeks since opening the doors the world has already attracted over 55,000 players who have cumulatively spent more than 4 years in the world!

I thought it would be fun to share what these 55,000 people have been up to. And, for anyone thinking of launching a world, here's some real data that you can use to drive your design decisions.

How are we capturing the data?

Everything that happens in the world, from changing room to making friends, goes through our GAML engine. Whenever something happens that we're interested in we add one line of GAML that logs the event out to google analytics. Quick and simple.

What are the players doing?

We've split all the different games and activities into 5 categories. The chart ranks these activities by the number of times our players have interacted, for example, talking to a non-player character counts towards the questing category, while shopping counts towards personalization.

We see that questing is by far the most popular activity (51%), followed by exploring (34%), and playing mini games a modest 3%!

What do we mean by questing?

These are stories and games played across the different rooms, they could be simple missions to photograph a landmark, or more complex puzzles requiring many artifacts that must be found and used in order.

Brit Chicks has a couple of different activities that make up a quest, this next chart splits these out.

So, in only 3 weeks the players have already completed over 160,000 quests! Meaning that on average, all players have:

  • talked to 7 non player characters,
  • picked up 6 different artifacts,
  • taken 5 photographs,
  • completed 3 quests,
  • but played only 1 mini game.

In other words, for every Flash mini game the users have engaged with 19 different quest activities!

Where are they exploring?

Exploring is our second most popular activity. The players have changed rooms over 700,000 times and interacted with 470,000 things in those rooms. Rather inexplicably, the 'Zoo Keeper' is by far the most popular, players have interacted with her over 80,000 times!

A full 30% of those 700,000 room changes are coming from players clicking sign posts in the rooms, and yet only 7 of the 23 rooms have sign posts.

As expected, the three most popular public rooms are Tower Bridge, Central Park, and Eiffel Tower; these are the 'landing' rooms for London, New York, and Paris. Closely behind is the Champs-Élysées in Paris, and the Sea Lion Pool in Central Park Zoo, NY.

What have we learnt?

It's clear from the data that our players are choosing to immerse themselves in the world, explore, and play quests. Yet most casual worlds are a mix of rooms, customizable avatars, and Flash mini games, with no questing and little narrative. Quite the opposite of what our data shows players want!

We're delighted with the results! We've been talking about the importance of narrative and why every virtual world needs a scripting language for a long time. Indeed, we've developed our own simple to write language called GAML - Game Application Markup Language

Creating all this questing content was quick too. The Brit Chicks team knew what types of adventures the girls would enjoy, but we're too busy creating all the artwork, rooms, and customizable avatars. So we brought in James, an avid gamer, but not a programmer. In less than a week James, who had never wrote any programming code before, was able to create rooms, quest, collectables, and games using only GAML.

In only two months James:

  • Setup up 20 parallax scrolling chat rooms,
  • Created 40+ quests and adventures,
  • Scripting conversations with 20 non-player characters, and
  • Added over 400 items into the 4 virtual shops

If you're interested, read our case study, how Brit Chicks were able to save £25,000 using GAML to create their world.

Saturday
05Sep2009

Why would anyone buy a virtual T-Shirt?!

To many adults (and parents!) the very idea of spending money on virtual goods seems strange and even unsustainable; why would anyone spend money on a digital T-Shirt, it doesn't even exist!

In this post I'm going to try and answer that question.

I believe that, no matter who you are, you already buy virtual goods, and have been doing for years.

Why do Paul Smith jeans cost over £100, when physically similar pants can be had for one-tenth the price? They both have similar practical utility, so what are we paying extra for? The same is true of brand-name products in almost every category. Brands are so pervasive that even those people who want to make a statement against 'the logo' have to invest substantial time avoiding it, which is just another kind of premium.

Every product contains both tangible and intangible sources of value; its this intangible value that is in fact virtual, everything you buy has at least some "virtual" component. By recognizing these components, we can make better sense of what's going on in the online virtual goods market, and craft strategies that leverage people's pre-existing experience with virtual goods. Paying a premium for a branded pair of virtual jeans is actually a pretty similar experience for most virtual goods customers.

There are four sources of value a product gives to a customer:

  • Practical utility: This is the tangible benefit that a product enables, whether that's transportation, warmth, cleanliness, or entertainment. Many products derive all of their value from this utility, online as well as off: generic drugs are pretty similar to a number of non-epic consumables in your average MMOG.
  • Perceived value: This is the extra value a customer perceives as a result of good marketing, product design, product quality, or exception product/market fit. For example, many customers derive satisfaction from feeling like they bought the "best" product in a given category, even if that product has no objective performance difference from its nearest competitor.
  • Social value: When I can use a product to my benefit in a social situation, it can be transformed in value. All gifting-type products are influenced by this source, as Hallmark has long understood. But plenty of other product categories depend on social factors: status purchases, beauty products, and fashion products.
  • Identity value: This is the strongest source of value of all, and it's a little tricky to differentiate from the preceding two sources. This is the benefit you get from incorporating a product into your self-conception. For example, take your average Mac fanatic. When they buy an Apple laptop, they are doing more than enjoying a premium product and showing off. They are saying to the world and - more importantly - to themselves: I am the kind of person that buys Apple products. Apple has done a phenomenal job of convincing us that we, too, can be a little like Steve Jobs, if only we had one more iFoo in our lives. Many fashion and beauty products create this kind of affinity. Identity products are not easily displaced, because the emotional investment is very high.

We find that consumers generally have separate budget for each category (not necessarily consciously). We've observed from our own products, and others, that if spending can be moved out of the entertainment budget (which is often constrained) and into the identity budget, it is possible to make a lot more money per customer. Even in tough times (actually, especially in hard times) people spend significant sums to bolster their sense of who they are.

Matthew Warneford

Follow me on twitter here.

Monday
31Aug2009

Template virtual world (or freemium) business model, spreadsheet included!

Want to know how virtual worlds make money? What are the hosting and moderation costs? How to balance paid customer acquisition against viral growth? And how all these variables interact?

Then jump right in and download our Virtual World business model spreadsheet

This is the same spreadsheet we've used with our partners to help them develop their business models. For example, in the chart below, the dark green line shows a 12x return in 3.5 years. I think most of us would describe that as a pretty good success. But, with different inputs, what you believe your team can achieve, and your appetite for risk, its possible to take the same model and see a 20x return, or 2x return. Ultimately, the model is there to help make decisions and understand how the variables interact.

While the model was developed for virtual worlds, its a great starting point for any freemium business. All the gory details, the maths, and the metrics behind the model are covered in these four posts:

Average Revenue Per User (ARPU)
Keep in mind the actual metrics used to drive model are indicative; there are no certainties. But, there is one 'bottom line' number to keep an eye on, your average revenue per unique user per month (ARPU).

The ARPU is driven by a boat load of variables: market size, growth rate, funnel conversion, subscription price, micropayment conversion, and more. Almost every metric in the model has some bearing on the ARPU; its a great indicator of the health of a world.

But what makes it so useful is that we can look at other worlds and easily estimate their ARPU's. What we find is that a successful casual world can generate between $1 to $2 revenue per unique user per month. If you want to know how we arrive at the ARPU figure for Club Penguin and Puzzle Pirates check out this post.

We can't expect to come out firing on a $2 ARPU immediately after launch. It takes time to figure out what types of items your players want to buy, how to improve your conversion of players to subscribers, and increase their micropayment spend.

In our spreadsheet the ARPU starts around the $0.30 mark, and builds up to the $1-$2 region over a period of 20 months. These improvements are the result of AB testing on the following:

  • Funnel conversion
  • Subscription and micropayment conversion
  • Increasing micropayment spend
  • Reducing churn
  • Increasing repeat visits

Check out the 'World Model' tab, the cells highlighted in yellow are the manual inputs that give us our ARPU increase over time. Change these variables to see the effect on the model.

Only a Starting Point
This model should be a starting point. Use it to kick start your own model, but also have some fun, play with the metrics and see how the relationships between the numbers effect the bottom line revenue.

For example, the chart below shows what happens if we keep everything the same but change the addressable market.

Clearly market size makes an enormous difference. This is probably no surprise, but that doesn't mean you should set out to build a world for boys and girls ages 3 - 14. While the market size might be ginormous, Nic Mitham will tell you:

...[if you] try to cater to a wide range [of users], the pitfall is concept dilution - you just don’t have enough engagement to attract and retain users. The lowest common denominator approach is no longer an option - relevance is key and a more tightly defined target market.

Nic Mitham, blog post: We’re targeting girls and boys aged 3 - 14

Its far easier to build a product that a smaller group of players love. The larger the market the more opinions and different tastes you have to deal with, ultimate it becomes harder it becomes to delight anyone while trying to please everyone!

But don't go too small! At the opposite end of the spectrum are the niche virtual worlds whose addressable markets will never deliver a good return. One thing this spreadsheet can do is give you is an easy way to understand when a market is too small.

Improvements
This model is not perfect, but I hope its a useful starting point for virtual world or freemium entrepreneurs. The top three improvements I'd like see are:

  • Traffic: should be able to model entering new territories, the change to the daily traffic flow, and synced to a marketing spend.
  • Funnel: more fine grained modeling of the steps from sending an invite through to signing up. I'd like to see the conversion from guest to player, homepage to guest, homepage to register, and so on. These metrics become essential for running and improving your world; if you don't track them you wont know if you're improving your conversion rate!
  • Paid Acquisition: the model could be more intelligent about when and how the paid acquisition is ramped up. For example, we should probably keep the paid acquisition low until our LTV is greater than the cost to acquire, it would be great if the spreadsheet could do that automatically.

The model is free for anyone to use and change. Indeed, I'd love to receive back any improvements so that we can create a really great model for entrepreneurs! Any questions, feedback, or mistakes do post them into the comments so we can all learn!

Download the spreadsheet

Lastly, if you'd like some help developing your own model, and don't want to reveal too much in the comments, then get in touch with me (matthew@dubitlimited.com)

Matthew Warneford

Follow me on twitter here.

Sunday
23Aug2009

How much does it cost to moderate a virtual world?

The previous posts in this series have explored how to model your virtual world growth and the revenues:

We're now onto the less exciting part of our business model, costs. In this post we'll develop a model for estimating how much time (and money) you can expect to spend moderating, supporting, and keeping your community safe. While this post is focused on virtual worlds, by tweaking the numbers it can be applied to any online community.

If you want to skip the explanation you can jump straight into the spreadsheet.

Why both moderating?
In my experience, moderation is one of those activities that everyone knows they should do, but when it comes to preparing the business plan the costs are plucked out of the air, or worse, ignored all together.

Moderation is not cheap and it is essential, so factor it into your model from the start.

If you want players to spend money in your world then you're really asking their parents to spend money in your world. Parents want their children to be safe and if they don't think your world is safe, you can be sure they won't be opening their wallets.

I advise all our partners to embrace safety, even make it a feature. Club Penguin used safety as a selling point; earning the parents trust was key to reaching their $70M a year in revenues.

What is moderation?
The moderation team have two responsibilities, keeping the players safe, and responding to support requests.

Support requests are non urgent, including payment issues, problems with the players account, or complaints. These can be responded to within 24 hours.

Where as, keeping your players safe requires realtime monitoring of the world, immediately responding to 'abuse' reports, checking profanity logs, and quickly approving uploaded images.

As you would expect, the actual cost of moderation scales with the popularity of the world; the busier the world the greater the number of support requests and the more players to keep safe.

During the busy times of the day we need to staff up with more moderators to monitor the chat rooms and respond to reports. Whereas, support requests can be answered over the course of a day.

To figure out how many moderators we're going to need we must calculate two things; how many players are online at any point in time, and how much moderation time the average player takes up. These two numbers can then be multiplied to get the number of moderators needed at any point.

Moderation Time
We start by listing out all the moderation tasks and all the support tasks. Against each of these we'll estimate how much time a moderator will need to resolve the issue.

Lastly, for each task, we'll estimate the probability that the average player will have that issue. For example, we might expect for every hundred online players at least one will report an other player. So the probability is 1 in 100, 1%, or 0.01.

A quick example. Lets say that on average a report takes 3 minutes to resolve, and 1% of our online users report someone, then we can calculate the average report time per user as:

(3 mins / 60 mins) x 1% = 0.0005 Hours = 0.03 Mins = 2 Secs

We find, on aggregate, for every online user a moderator spends 2 seconds responding to reports.

Repeat the process for all other moderation activities and we get the total average moderation time per user.

Support requests follow broadly the same process. However, in this case its the total number of unique visitors that drives the number of requests, not the number of concurrent players.

For example, we might estimate that 0.1% of our total monthly unique players will have a payment issue, and each issue takes 6 minutes to solve. We find how much time is spent per unique user by:

(6 mins / 60 mins) x 0.1% = 0.0001 Hours = 0.006 Mins = 0.4 Secs

Again, repeat the process for all other support activities. We end up with two tables that look something like these:

Number of Moderators
Now we know the average moderation time per user figuring out the number of moderators is pretty simple, we just need to know how many players are online.

In this post I explored one approach to modeling hourly visitors as a normal distribution (its a long math heavy post, consider yourself warned!). Using the spreadsheet in that post we can find the number of concurrent players given the number of monthly uniques.

All we need to do now is multiply the number of concurrent players by the average moderation time per user to get the total amount of moderation.

For example, we estimated in the tables above that each user requires 0.00167 hours of moderation time, so if there are 1000 players online:

0.00167 × 1000 = 1.67 Hours = 1 Hour 40 Minutes

Of course, no one is perfectly efficient, do while there might be 60 minutes in a hour its safer to assume that our moderators also spend some time browsing the site, responding to adhoc requests, and perhaps achieve 75% efficiency. In other words, for every hour they'll get through:

60 Minutes x 75% = 45 Minutes of work

So, for our 1 hour 40 minutes of work we can calculate how many moderators we need by:

1 Hours 40 Minutes / 45 Minutes = 2.2 Hours = 2 Hours 13 Minutes

So, where there are 1,000 players online we have 2 hours and 13 minutes of moderation work. We can't employ someone for only 13 minutes an hour, so we round up to 3 moderators.

I've pulled all this together into a spreadsheet here. The spreadsheet adds a couple of little extras like adjustable moderation hours and more fine grained configuration.

Its only a guide!
Here at Dubit we developed virtual worlds on top our our platform, and although we've moderated for a number of customers, including Sky Sports and Cartoon Network, please only use the numbers in this model as a guide. Your actual milage will vary depending on your community and your moderation tools.

Summary

  • If you want parents to spend money in your world you need to take safety very seriously. Parents will not endorse an unmoderated community. 
  • The moderation team have two responsibilities, keeping the players safe, and responding to non-urgent support requests.
  • Moderation costs scale as your world grows. You don't need to hire a big team from day one. 
  • You do, however, need to have enough moderators ready for peak hours.
  • Good moderation and support tools will save you a lot of time and money. These are worth investing in from the start. At a minimum you need configurable allowed word filtering, banned word filtering, automatic banning, user reports, report delegation, user level blocking, moderator to room messaging, user to moderator messaging, and unrestricted room access.

 

If you'd like to find out more about our virtual world platform or how our CRB vetted moderators can help keep your community safe, then get in touch with matthew.warneford@dubitlimited.com.

Matthew Warneford
Follow me on twitter here

Saturday
15Aug2009

Your business plan needs hosting costs, start by modeling your website visits per hour

In the last couple of posts I explored how virtual worlds generate revenue. To understand the moderation and hosting costs we first need to build a model that predicts the number of visitors per hour.

While I've focused on virtual worlds, this model can be applied to any web property; you need enough server hardware to cope with your peak visitors. Using the spreadsheet developed in this post you'll be able to estimate your peak visits per hour, page views per second, and consequentially your hosting costs for your business plan.

By the end of the post we'll end up with a model that looks something like this:

Normal Distribution
We'll keep the model simple and assume that the number of visitors to the world is normally distributed over a 24 hour period. For a single geographic region the result is a chart that looks something like the one below.

Notice how the traffic peaks at 12 o'clock. Of course, its unlikely your world will be busiest in the middle of the day, but the assumption helps simplify the math. Don't worry, it doesn't effect the outcome; think of the chart as a snapshot of a 24 hour period, not a real day.

This chart tells us the probability that a player will visit at 4AM, or 1PM, or any time during the day. For example, if we wanted to know the likelihood that a player might visit between 4AM and 8AM we would calculate the area under the graph, highlighted in blue, in the chart below.

We're going to use excels NORMDIST function to find the area under the graph.

If you're interested in the math that describes the normal distribution check out this wikipedia article. But don't worry about understanding it all, we just need to know how to use it!

NORMDIST takes two configuration options: the mean, and the standard deviation.

To keep things simple we want a symmetrical bell curve, we do that by setting set the mean to 12 o'clock midday. Another way to think about the mean is as an average, for example, we might say that, on average, our players visit at 12 o'clock midday.

The standard deviation of the curve is set to 4 hours; think of it as a measure of the width of the bell, and therefore the spread of visitors throughout the day. A small standard deviation means that our players are even more likely to visit around 12 midday. While a large standard deviation spreads the visits out over the day.

So, to find the probability of a player visiting between 4AM and 8AM we use the following equation:

NORMDIST(8AM, MEAN, STANDARD DEVIATION, CUMULATIVE) - NORMDIST(4AM, MEAN, STANDARD DEVIATION, CUMULATIVE)

or with actual values:

NORMDIST(8, 12, 4, 1) - NORMDIST(4, 12, 4, 1) = 0.14

We find that the probabilty is 0.14, or 1 in 7 players visit between 4AM and 8AM.

Standard Deviation
Lets look at the 8 hour stretch from 8AM through to 4PM highlighted in the chart below.

We can calculate the probability using the same process:

NORMDIST(16, 12, 4, 1) - NORMDIST(8, 12, 4, 1) = 0.682

We find that the probability of a player visiting is roughly 0.68, or another way to think about it is that 68% of our players will visit between 8AM and 4PM.

This 8 hour stretch is known as 'one standard deviation from the mean'; the mean is 12 midday, the standard deviation is 4 hours, so 8AM is 4 hours before the mean, and 4PM is 4 hours after the mean.

No matter what the standard deviation, 68% of all occurrences will always fall within one standard deviation of the mean.

We use this to help us estimate a reasonable standard deviation. For example, if your world is targeting tweens then its reasonable to assume most of your players will be in bed by 9PM, and can only start playing after finishing school at 4PM.

Following these assumptions we would set our standard deviation to 2.5 hours, so that 68% of our visitors fall within the 5 hour window from 4PM to 9PM.

Adjusting For 24 Hours
Up to this point I've been telling you that the probabilities described by the NORMDIST function are the probabilities that a player will visit at any given time. This isn't quite correct.

If you look closely at the chart you'll see that the line never touches 0. In fact the line will never ever touch zero; a normal distribution is an infinite continuum of probabilities, it just goes on and on and on.

This a problem for us. While some days might feel like they drag on and on and on, every day is in fact only 24 hours long. No longer, no shorter. Yet, our normal distribution extends beyond 24 hours!

So when we said that 68% of our visitors come between 8AM and 4PM we were not adjusting for the fact that a day is only 24 hours.

We make the adjustment by finding the area under the graph for the whole day, from 0 to 24 hours, and then finding what percentage of the total area that 0.68 represents.

To find the area under the graph for the whole day we first find the probability that a player will visit after midday, and then double the value to include the probability they'll visit in the morning (thats why symmetry around 12 midday makes it easier!).

The formula looks something like this:

(NORMDIST(24, 12, 4, 1) - NORMDIST(12, 12, 4, 1)) × 2 = 0.997

The we can take the 0.682 we calculated previously and find out what percentage of the area under the graph that represents with the equation:

0.682 / 0.997 = 0.685 = 68.5%

So we've calculated that 68.5% of our visitors will arrive between 8AM and 4PM.

In this case the difference is minor, a meager 0.3 percentage points. However, the adjustment does become more important when the standard deviation is larger.

Visits Per Hour
Now we have a way to find the probability a player will visit calculating visits per hour is easy.

All we need to do is use the process above to find the probability for any given hour then multiply by our total daily visitors.

For example, if we have 1000 visitors, we can find our how many visit between 10AM and 11AM using the formula:

Probability × 1000 = Players

Probability = (NORMDIST(11, 12, 4, 1) - NORMDIST(10, 12, 4, 1)) / 0.997 = 0.093

0.093 × 1000 = 93 Players

Where 0.997 is the total area under the normal distribution for a single 24 hour period.

Multiple Time Zones
Imagine your UK players leave school and start logging into your world at around 4PM GMT, 7 hours later their American West coast cousins are doing the same. We can't model these two geographies with a single distribution curve, instead we need to model each time zone separately.

If you have not already, nows a good time to check out the accompanying Google spreadsheet.

I've used the formulas we created to build a table showing visits per hour customized by time zone, standard deviation, and daily visitors per geographic region. The result is our international visits per hour chart:

The red line shows the cumulative visits per hour across the three major geographies of UK/Europe, East Coast, and West Coast. Notice how three different normal distributions lead to our 'humpy' red line. Although the numbers I've entered are not real, we do see broadly similar traffic charts for some of the worlds and site we run. Your results we be different depending on your audience, demographics, and geographies. 

To use this table for your business model all you need to do is enter your major visitor geographies, how many daily visitors you expect per geography, and your assumed standard deviation.

This this post will help you get a feeling for the relative size of the different markets.

Concurrent Players
To find the number of concurrent players we divide the total visits per hour by our average session length.

For example, lets assume that our average visitor spends 8 minutes in our world, with 100 visits per hour we can calculate the number of concurrent players:

100 concurrent players / (60 minutes in an hour / 8 minute session length) = 13 players

Next Steps
I hope this post will be useful for anyone who is building a business model for a web based property and wants to estimate their hosting costs.

Your hosting costs are usually determined by your peak traffic. Using this spreadsheet you can find your peak visits per hour, from here its simple to estimate page views per second, and therefore hardware requirements.

In the next post I'll use the formulas to calculate the moderation costs for a virtual world.

Like the other posts in this series, there are plenty of places for typos and mistakes. Do let me know where I've gone wrong! Or maybe I've just not explained some of the concepts very well, post a comment and let me know.

Matthew Warneford
Follow me on twitter here