Chat Roulette (NSFA) is a textbook random search and matching process.  Except that it is missing a key ingredient:  an instrument for screening and signaling.  That, coupled with free entry, means that everyone’s payoff is driven to zero.

In practice the big problems with Chat Roulette are

  • Too many lemons
  • Too much searching
  • The incentive do something attention grabbing in the first few seconds is too strong

On the other, hand I expect the next generation of this kind of service to be a tremendous money maker. Here are some ideas to improve on it.  The general idea is to create a mechanism where better partners are able to more easily find other good partners.

  1. Users maintain a score equal to the average length of their past chats.  The idea is to give incentives to invest more in each chat, and to reward people who can keep their partners’ attention for longer.  A user with a score of x is given the ability to restrict his matches to other users with a score greater than any z≤x he specifies.    This is probably prone to manipulation by users who just keep their chats open inviting their partners to do the same and pad their numbers.
  2. Within the first few seconds of a match, each partner bids an amount of time they would like to commit to the current match.  The system keeps the chat open for the smaller of the two numbers.  Users maintain a score equal to the average amount of time other users have bid for them.  Scores are used to restrict future matching partners just as above.
  3. Match users in groups of 10 instead of 2.  Each member of the group clicks on one of the others and any mutually-clicking pair joins a chat.  This could be coupled with a system like #1 above to mitigate the manipulation problem.  Or your score could be the frequency with which others click on you.
  4. A simple “like/don’t like” rating system at the end of each chat.  In order to make this incentive-compatible, you have an increased chance of meeting the same person again in future matches if both of you like each other.  On top of that, your score is equal to the number of times people like you.
  5. Same as 4, but your score is computed using ranking algorithms like Google’s PageRank where it’s worth more to be liked by a well-liked partner.
  6. Multiple channels with their own independent scores.  You could imagine that systems like the above would have multiple equilibria where the tastes of users with the highest scores dominate, thus reinforcing their high scores.  Multiple channels would allow diversity by supporting different equilibria.
  7. Allow users to indicate gender preference of their matches.  To avoid manipulation, your partners report your gender to the system.

These are all screening mechanisms:  you earn control over whom you match with.  But the system also needs a signaling mechanism:  a way for a brand new user to signal to established users that she is worth matching with.  The problem is that a good signal requires a commitment to lose reputation if you don’t measure up.  But without a way to stop users from just creating new identities, these penalties have no force.

This is a super-interesting design problem and someone who comes up with a good one is going to get rich.  (NB:  Sandeep’s and my consulting fees remain quite modest.)