We recently updated our algorithm for ranking Twitter applications. Our goal is to continually improve how we help people discover the most interesting and helpful Twitter apps based on platform, tags, categories, search, “essential types” and popularity. In that spirit we’ve been working to determine which apps people are truly using and what they like best.
At first blush, it might seem to be as simple as looking at a list of Twitter client popularity and mimicking that. But that breaks down as a measure for those apps that don’t publish to Twitter or contain a source tag. Apps tend to fall into one of four classes, which directly affect our ability to measure popularity:
- clients – those apps that act directly on someone’s behalf to update their status, show their stream, send direct messages, etc. These apps almost always include a “source” in the tweet to identify where it came from, and are the easiest to discover. (One complication arises when different apps within a “family” share a single source parameter, like Tweetdeck’s desktop and iPhone clients, making it difficult to properly differentiate them.)
- integrations – apps that connect another service to Twitter. For example, FriendFeed allows people to share content & comments directly to Twitter, or twitterfeed will publish an RSS feed to Twitter.
- sharing – the set of tools used to share content like links, photos, videos and songs through Twitter’s text-only status updates. Often these apps produce just a link within the tweet, and are not the client itself.
- services – those tools that are primarily reading Twitter data streams instead of publishing. Sites like TweetStats or Listorious provide interesting aggregation and analysis of your tweeting patterns and useful directory of Twitter Lists, respectively. Many of these services might have a “Tweet This!”-type link, but they are not primarily clients. (Theoretically Twitter knows which OAuth-based apps have been approved most often, and which tokens are being used in requests, which might shed more light on the popularity of some read-only apps.)
Only looking at the number of updates from a specific source would unfairly favor clients over other types of apps and says nothing about what people think of the app, and if they would recommend it to others.
All ranking systems involve making difficult judgments about what the most important factors are. While disclosing the exact details of the algorithm can encourage gaming, we can say that we look at a combination of both external and internal data sources (such as the rating of the app, and number of users) to determine popularity and quality.
We definitely will continue to add data sources, refine how we calculate rank and slice the data in other (hopefully) interesting ways. What are other factors you think we should be looking at to rank apps? We would love to hear your thoughts and ideas in the comments or by contacting us.
