Developer incentives in social networking platforms

January 29, 2008

Synopsis

Designing a social platform is in some ways similar to designing a competitive multi-player game. The following considers the implications of this similarity in some detail.

* * *

Definitions

Today’s social networking platforms (platform here defined as a social site’s capability to offer third-party software to its users) are already diverse, yet their purpose is the same: providing users with reasons to return to said social site — reducing user fatigue and churn, increasing the elusive fun factor, adding value that the site itself does not have the resources, the expertise, or the inspiration to build.

Developers and the platform (its owners) each have a set of goals. Platform’s ability to achieve its goals is largely predicated on creating an environment where developers can reach as many of theirs as possible.

Platform developers have some or all of these goals:

  1. Earn money
  2. Acquire fame
  3. Procure intellectual stimulation

The goals of the platform, governed by the key purpose described above, are as follows:

  1. Attract and keep top developer talent
  2. Encourage development of net-positive products
  3. Maximize constructive competition among developers
  4. Minimize objectively net-negative developers & products

The platform owner wields the following controls: distribution (viral or direct), data from (and about) the users, access to platform-wide information, financial opportunity, and policy. Influencing developer behavior by managing their incentives via these controls is the elegant way to manage the platform towards its goals.

Lyrical digression

Having defined the absolute basics, it’s tempting to simply project them onto some classic game design text, but the result would necessarily be too abstract. Therefore, the following is a set of what I think are particularly representative examples mixed with some of the key principles themselves. It isn’t meant to be an exhaustive, or even an uncontroversial list. The purpose of this essay is only to convince the reader that a good way to consider social platform design is from the game design-theoretic perspective, not to prove the correctness of any one of the claims I make below. Also, as I think of more poignant examples, I will add them below.

Simplicity, Consistency, Fairness

Most critical of all, the platform must be perceived to be a fair (game), and winnable. If the game is revealed to be fixed, or simply tampered with by the platform, the players’ rational response would be to stop trusting the platform, and, more importantly, allow themselves to cheat.

It will be necessary to change the rules every once in a while. Announcing the changes early, giving the developers a chance to provide feedback to proposed changes (probably behind the scenes to avoid time-wasting lobbying), and disclosing the motivation behind the changes, are all useful.

It’s important for the platform owner to be prepared for some unexpected outcomes: for example, users might favor completely unanticipated applications, or a particularly unpleasant developer team might reach the victory condition fastest, etc.

Goals & Opposition

Well-defined goals are crucial in a competitive game. What is the fight for, what does it mean to win? Defining the victory condition through unifying developer and platform goals is an elegant notion.

1. Simply linking developer’s financial interests to the desired behaviors on the platform is perhaps a little tricky (and rife with opportunity to cheat for the unethical developers), but there clearly are possibilities.

For example, if the platform offers revenue sharing, the platform’s “tax rate” can vary for developers exhibiting some desired behavior.

2. Fame is the best developer goal to exploit, since it applies to both commercial and hobbyist developers, though somewhat differently. Hobbyists simply want the bragging rights, commercial developers understand that fame is interchangeable with money. For those at the top of the charts, fame converts to better eCPMs and allocations from brand advertisers.

Some examples:

- because of its control over information, the platform can easily influence developers’ time horizon in applications’ features. Compelling developers to consider long-term user value is easily accomplished by defining and publishing the monthly active users (as opposed to daily) as the primary metric of success.

- conversely, providing daily active user information is also absolutely crucial in facilitating healthy competition among developers, and should be published as well to make sure best application practices proliferate as quickly as possible, though never as the primary success metric.

- prominently listing best-loved (highest user-rated) products that also have scale (to discourage hyping) will encourage developers to “bribe” users with features that are purely user-value oriented.

3. Catering to the need for intellectual stimulation is a little nebulous, but obvious at the same time. Designing the APIs in a particularly elegant way will naturally help bring in the best and the brightest engineers; throwing together something that barely does the job will inevitably turn off the elite. One subtler example: creating “simple” and “power developer” APIs will help the newcomer developers get up to speed very quickly, but not rob the advanced ones of the full power of the platform.

It’s worth pointing out that ultimately, until non-advertising business models are devised for social applications (and probably even after they are) valuable distribution (reach + frequency) is going to be the main underlying goal for all developers, commercial and otherwise. The examples above simply illustrate what the platform can do to refine the definition of “valuable distribution” for the developers.

Balance

The most critically acclaimed competitive multi-player games are often praised for their balance. With the goals clearly defined, the players are given a set of tools (skills, powers, etc) with which to achieve them. A key design goal is then to make sure that no one skill or power is so obviously superior to all others that the entire game collapses into all players exclusively using the superior tool non-stop.

Balance applies in social platform design in a slightly different (but highly relevant) way.

The platform’s most valuable control (and lure) is distribution, which is typically made available to the developer through the colloquially-termed “viral channels”. Perhaps the hardest task in social platform design is creating the rules and limits applying to viral channels.

If the viral channels were made completely unavailable, and the users would discover social applications through direct marketing only, the growth of even the best apps would be linear (this can be improved, but not very much). The platform would most likely see very little user traffic.

If the viral channels were made available in an effectively unlimited fashion, the goals being what they are, distribution-hungry developers would rapidly fall to spamming the social site’s user base. Yes, it’s simply bad, and it couldn’t happen to you, but consider the following thought experiment:

Imagine a door-to-door salesman, with a stack of marketing brochures, and a goal to get as many people as possible, as soon as possible, to accept one marketing brochure for their later perusal. The sales company states its belief that the best practice in this case is to knock on each door, introduce yourself, win over the affection of the home owner, and finally offer the brochure up. However, there is neither a penalty for nor a limit as to how many brochures the salesman can simply stuff into people’s mailboxes without any interaction with them. The sales company also publishes daily rankings of all the salespeople they have on payroll, and compensates people better the closer they are to the top. It’s also pretty clear from the numbers that some other salespeople are simply stuffing mailboxes. Our salesman is desperate to do good, but his bonus is getting cut down more and more, while everyone around him is cheating! The outcome is pretty obvious.

It is very much worth noting that the viral channels must never be allowed to become a substitute for retention, a way to mask attrition. They are a great way to rapidly grow something good, or bad. Assuming there will be an occasional “bad”, limiting these channels to the minimum power necessary to maintain good growth (but not overwhelming) for an application, and no more, is likely the best conceptual design.

Another way to attempt to balance things out is to keep viral channels relatively unlimited, but also emphasize the functionality to remove or de-install platform applications, make sure that users can easily rid themselves of an annoying or unwanted product. Although effective against application spam, this approach has the side effect of creating a new kind of a churn, fatiguing and frustrating the innocent users.

Game Play & Miscellany

1. It’s desirable to arbitrarily encourage “good” behavior by developers, disallowing or at least punishing abuse. it’s clear that encouraging “goodness” via pure policy and enforcement is long-term intractable, and possibly drives developers to build smaller, shallower products, to stay under the radar and abuse the platform from there.

2. It’s important to create what passes for a level-playing field, where though the best and strongest developers are obviously rewarded, not so much so that it discourages newcomers. Over-rewarding is a recipe for disaster.

Example: offering increased distribution power (better communication resources or direct promotion) in reward for some objectively-measured positive behavior could place the beneficiary so far ahead of its competitors that those will simply cease fighting and providing the winning developer with competitive motivation to innovate.

A good way to use additional-resources rewards is to take away the benefits automatically after some small numbers of days or hours, and reinstate them after a little while, if the developer’s positive behavior persists.
3. Zero-sum games are bad. “For me to win, everyone must lose” encourages scorched-earth approach to application building, and frequently harms the users. Creating opportunities for developers to collaborate, and benefit from this collaboration is a crucial defense against the cacophonous collateral damage of overzealous product promotion.

4. “Leveling up” is very important in RPG game design. There is generally a logarithmic nature to this process: a new entrant can gain a few levels relatively quickly, but as the levels increase, this process becomes harder and harder. This concept can be readily reused when designing a social platform: new applications and developers should receive automatic promotion, be given a short boost, an almost unfair running start over existing contenders, then left to compete with the established players. The key incentive balance here is to send an “it’s never too late to join” message to the incoming developers, while not frustrating the veterans trying to defend their dominance and hold on to their hard-earned leadership.

I think I will stop here for now.

Epilogue

There are lots of ways in which game design is nothing like social platform design. I tried to expose the similarities, while ignoring the differences. Everything I know about game design I learned by studying the online writings of Greg Costikyan, Dani Bunten Berry, and other game designers kind enough to share their insights.

2 Responses to “Developer incentives in social networking platforms”

  1. Dave McClure Says:

    tour de force, max.

    better watch out — if you keep this up, people are going to expect you to write these kind of masterpieces all the time.

    re: viral channels, i think there’s also a significant discussion around whether those channels are designed to amplify a) initial invitation requests, or b) demonstrated usage by other users.

    while i know the discussion above is theoretical, i can’t help but jump into the lab to assess the Facebook platform. currently, my observation is that Facebook has designed its initial viral channels primarily around the invite process, and has in fact actively *prevented* amplification around the news feed / usage model of others, unless they already have the same app installed.

    this strikes me as a bit odd.

    one would think other social network users’ vetting of an app thru continued usage would be the BEST possible signal of “quality”, and should therefore be rewarded with signal amplification thru the social graph & news feed to other users… regardless of whether or not they have already installed the app.

    in fact, an arguably better platform design choice might even be to PREVENT invites altogether, and to only allow viral channels by optimizing the news feed stories coming from apps being used by others, and amplifying those stories.

    i can only surmise that Facebook may have had a concern that not enough viral activity would occur unless some amount of “spammy” invitation were allowed by developers. not sure i’m correct on this point (and if so whether i agree with the decision), but it does seem to indicate that as you suggest, Facebook is trying to work out sustainable game mechanics for its platform & developers.

    in summary: God may not play Dice with the Universe, but Zuck may indeed play Craps with the Platform ;)

    – dave mcclure

  2. maxlevchin Says:

    Thanks for the compliment.

    Facebook team knew that the fundamental difference between their and other social networks is the “profile hopping” behavior as primary means of noticing new memes. MySpace widgets grew because people were seeking to copy what they observed on each others’ profiles. Facebook’s Feed makes profile hopping a lot less of a primary function. Meanwhile, success or failure of the platform meant (at least PR) success or failure of the company.

    Front-loading various kinds of invitations was key to guaranteeing that the platform would turn developers’ and press’ heads.

    The model you describe makes a lot of sense, but it is inherently riskier: what if nobody built great, compelling apps at the outset?

    As the platform matures, creating a more balanced “game” (and better economic opportunities) is key to retaining developer attention.


Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.