A couple of nifty new updates to our foursquare brand list rankings have just been added. While seeing current rankings is interesting, seeing the ranking history and knowing how much a brand has moved in the rankings is even more interesting. So we’ve added a new “1 Wk Change” column, which displays the brand’s change in rank from 1 week ago. You can see some brands are holding steady, with 0 change. Others are gaining and others are losing ground.

We’ve also added a new View Stats link for each brand where you view the historical follower and ranking numbers on some pretty timeline charts. The charts are interactive so you can mouse over and drag around to play with the charts.

There’s also a new “Show All Brand Banners” check box at the top. Now that there are so many brands, displaying every brand banner on the page was just too slow. So we only display the top 50 brand branners by default. If you wanna see them all, just click the checkbox.

Also, not new, but good know…Osnapz members can click the “Check Followers Status Now” link at the top, and we’ll tell you whether you’re already following each brand or not. And if not, you can click a button to quickly follow the brand.

This Week’s Biggest Movers

The week’s biggest climber is (RED), with a +42 climb in rankings. Their special Dec. 1 (RED) badge was obviously successful in getting a large number of followers. Check out their graph as well by clicking their View Stats link.

Other double digit gainers are:
Timeout Melbourne +17
Liberty University +14
Missouri State University +13
University of Louisville O. +12
The Magnificent Mile +11
Volcom Entertainment +11
University of Lincoln +11
Monster Energy Supercross +10

The biggest drop in rankings is Theory, dropping 16 spots to #195.

Check out the updated foursquare brand list here.


I DO!  And from the sound of it on various blog posts and Foursquare’s Get Satisfaction page, a lot of other Foursquare users do as well.  Foursquare is fun for awhile, checking in everywhere you go, getting mayorships and notifications of where your friends are at.  But a big part of the fun for a lot of people is getting the badges.  Checking in after while gets old without any incentive.  Especially if you’re checking into multiple applications.  When you’ve got Foursquare, Gowalla, Brightkite, LooptStar, CauseWorld, and Whrrl all on your phone (as I do), and you’ve only got a few seconds to checkin, which app are you going to choose?    For me, its the one that’s the most fun and provides some type of  incentive.  Foursquare’s mayorships and badges provide that nice little gaming element without going overboard.

The problem is, Foursquare’s badges are fairly limited and many are impossible to get for the majority of users.  There are a lot of tech event specific badges and a lot of New York badges.  There seems to be no love for the West coast (only 2 San Francisco badges, and 1 Vancouver, Canada badge).  As a Seattleite and someone who doesn’t go to big tech events, I feel very left out.  For sure, there are a lot you who feel the same way.

So Osnapz now has custom-made Foursquare badges for you to earn!

Seattle Skyliner

What a beautiful view, that Seattle skyline. Yeah, you know the best spots to see it!

Seattle’s gotta have it’s own Foursquare badge, so here’s one for Seattle Foursquare fans.  Check into some of Seattle’s best viewpoints to get this (you’ll have to figure out how many and where).


You're a true Seattle sports fan...checking into both Qwest Field and Safeco Field.

Ok Seattle’s gotta have another one.  Mariners, Seahawks, and/or Sounders FC fan?  Then this one should be a breeze for you.


You really love your hot bowl of Pho, but then again who doesn't?

This is for everyone who loves pho!  You’ve gotta really love pho to get this.

General Tso’s

Nom nom, love that General Tso's and hot and sour soup!

For the Chinese food fans, this is for you.  You don’t have to have ordered General Tso’s chicken to get this, any Chinese food will do!

Consider this an add on to your current Foursquare experience.  To get started, first join Osnapz and link your Foursquare account. Then follow the Osnapz account. If you’re a Twitter and Facebook fan as well, you may even get the Double-O-Snapz badge as well!

What other Foursquare badges would you like to see? If you have suggestions for new Foursquare badges you’d like to see us make, feel free to suggest it on our Get Satisfaction page. We plan on releasing several new badges every month!

For Businesses

Do you have a Foursquare venue and want to reward checkins and mayorships with your own branded Foursquare badges? You can do that with Osnapz too. Find out more at Osnapz for Business and register for the private beta!

In case you haven’t already heard, Facebook just released their new Graph API at f8.  Its good news for us developers, as the new API is much cleaner and simpler to use than their old REST API.  The great news is that Facebook now supports OAuth 2.0 for authentication instead of their own custom authentication mechanism.  The really great news is that OAuth 2.0 is super simple to use.  If you’ve used OAuth 1.0a before, you know it can be a little tricky, with the request tokens and generating signatures and such.  Well OAuth 2.0 simplifies all that, and makes using the Graph API super simple. You can read Facebook’s documentation here: http://developers.facebook.com/docs/authentication/ .

There’s example code there, but its in PHP and Python, which of course is not very useful for .Net developers.  So here’s all the code you need to get running in C#.

Create a class, called oAuthFacebook.cs. A lot of this code came from a Twitter OAuth example, which I’ve modified for Facebook and OAuth 2.0:

public class oAuthFacebook

public enum Method { GET, POST };
public const string AUTHORIZE = "https://graph.facebook.com/oauth/authorize";
public const string ACCESS_TOKEN = "https://graph.facebook.com/oauth/access_token";
public const string CALLBACK_URL = "http://www.blahblah.com/facebookcallback.aspx";

private string _consumerKey = "";
private string _consumerSecret = "";
private string _token = "";

#region Properties

public string ConsumerKey
if (_consumerKey.Length == 0)
_consumerKey = "1111111111111"; //Your application ID
return _consumerKey;
set { _consumerKey = value; }

public string ConsumerSecret {
get {
if (_consumerSecret.Length == 0)
_consumerSecret = "11111111111111111111111111111111"; //Your application secret
return _consumerSecret;
set { _consumerSecret = value; }

public string Token { get { return _token; } set { _token = value; } }


/// <summary>
/// Get the link to Facebook's authorization page for this application.
/// </summary>
/// <returns>The url with a valid request token, or a null string.</returns>
public string AuthorizationLinkGet()
return string.Format("{0}?client_id={1}&redirect_uri={2}", AUTHORIZE, this.ConsumerKey, CALLBACK_URL);

/// <summary>
/// Exchange the Facebook "code" for an access token.
/// </summary>
/// <param name="authToken">The oauth_token or "code" is supplied by Facebook's authorization page following the callback.</param>
public void AccessTokenGet(string authToken)
this.Token = authToken;
string accessTokenUrl = string.Format("{0}?client_id={1}&redirect_uri={2}&client_secret={3}&code={4}",
ACCESS_TOKEN, this.ConsumerKey, CALLBACK_URL, this.ConsumerSecret, authToken);

string response = WebRequest(Method.GET, accessTokenUrl, String.Empty);

if (response.Length > 0)
//Store the returned access_token
NameValueCollection qs = HttpUtility.ParseQueryString(response);

if (qs["access_token"] != null)
this.Token = qs["access_token"];

/// <summary>
/// Web Request Wrapper
/// </summary>
/// <param name="method">Http Method</param>
/// <param name="url">Full url to the web resource</param>
/// <param name="postData">Data to post in querystring format</param>
/// <returns>The web server response.</returns>
public string WebRequest(Method method, string url, string postData)

HttpWebRequest webRequest = null;
StreamWriter requestWriter = null;
string responseData = "";

webRequest = System.Net.WebRequest.Create(url) as HttpWebRequest;
webRequest.Method = method.ToString();
webRequest.ServicePoint.Expect100Continue = false;
webRequest.UserAgent  = "[You user agent]";
webRequest.Timeout = 20000;

if (method == Method.POST)
webRequest.ContentType = "application/x-www-form-urlencoded";

//POST the data.
requestWriter = new StreamWriter(webRequest.GetRequestStream());


requestWriter = null;

responseData = WebResponseGet(webRequest);
webRequest = null;
return responseData;

/// <summary>
/// Process the web response.
/// </summary>
/// <param name="webRequest">The request object.</param>
/// <returns>The response data.</returns>
public string WebResponseGet(HttpWebRequest webRequest)
StreamReader responseReader = null;
string responseData = "";

responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream());
responseData = responseReader.ReadToEnd();
responseReader = null;

return responseData;

Add a login button to your .aspx page:

protected void btnLogin_Click(object sender, EventArgs e)
oAuthFacebook oFB = new oAuthFacebook();

Create a callback page, call it FBCallback.aspx or whatever:

protected void Page_Load(object sender, EventArgs e)
string url = "";
oAuthFacebook oAuth = new oAuthFacebook();

if (Request["code"] == null)
//Redirect the user back to Facebook for authorization.
//Get the access token and secret.

if (oAuth.Token.Length > 0)
//We now have the credentials, so we can start making API calls
url = "https://graph.facebook.com/me/likes?access_token=" + oAuth.Token;
string json = oAuth.WebRequest(oAuthFacebook.Method.GET, url, String.Empty);

That’s all there is to it!  You can start making Graph API calls by including the  access token with your requests.

Gowalla just recently released their API to the public and Osnapz now has a list of top Gowalla users, similar to the list of top foursquare users.  While working on these lists, I’ve seen several interesting things about foursquare and Gowalla users:

  • If you sort the lists by Friends, you’ll see a lot of the same users at the top of the list.
    • @elavrov is #1 on foursquare and #2 on Gowalla,
    • @waynesutton is #1 on Gowalla and #16 on foursquare
    • @loic is #5 on foursquare and #3 on Gowalla
    • Other top users on both lists: @jonathan360, @davepeck, @steverubel, @clatko
  • The number of friends  is far greater on foursquare than Gowalla.  There are currently 24 people with 1000+ friends on foursquare, while the max on Gowalla is in the 700’s.  Does that mean people are engaging and sharing with their friends more on foursquare?
  • While processing Gowalla member stats, I’m seeing around 40-50% of Gowalla users with no stamps, meaning they have never checked in anywhere and aren’t using the service
  • While updating foursquare member stats, I see a fair number of foursquare accounts which were once active, and are now deleted.  Seems like a fair number of people stop using the service and decide to delete their account.
  • The founders of foursquare and Gowalla are checking each other out, but not using the competition much
  • Some of the top foursquare users who are also on Gowalla, but much more active on foursquare
    • @scobleizer, @typezero3, @carl, @stevekeys

As promised, some cool new features have been added to Osnapz during the holidays.  Some of them have been out for a little while now and lots of you have been using them already, but here’s the recap.

  • LinkedIn has been added!  Existing users may now link their LinkedIn account on the “social sites” tab.  New users have the option of registering with their LinkedIn account.  Either way, once you link it, you can then use the LinkedIn button to sign-in to Osnapz.  There aren’t currently any LinkedIn achievement badges yet, but I’ll soon get some badges up for # of recommendations and connections.  You LinkedIn activity is being included in your social media experience points.  See the “experience” tab for details.
  • YouTube has been re-added.  After a brief disappearance, YouTube is back as a supported site.  As usual, you can add YouTube on the “social sites” tab or register and login using the YouTube button.  There are currently 2 different sets of YouTube achievement badges, and your YouTube activity is included in your experience points and level.
  • New experience points and level.  Your quantifiable social media activity is now being rewarded points, which will determine your social media experience level.  Simple activities (such as posting a tweet) are worth fewer points than more difficult tasks (such as uploading a video or getting a recommendation).  The idea is that the more social media activities you perform, the greater your social media experience is.  You social media level increases as you gain more points, with each successive level being more difficult to obtain.  You can see full details of your experience points in your account on the new “experience” tab.  A summary of your points and level is also now displayed in your account dashboard as well as your public profile.  Check the home page to see some example screenshots if you’re not yet a member.

Well, its been a busy couple of weeks lately so I haven’t had a chance to update the blog recently. Lots of cool things have been happening at Osnapz, here’s a recap of some of the latest.

  • Added a list of Top Foursquare Users, which ranks foursquare users by # of friends and mayorships, filterable by city.  Blocks of users are updated every few minutes to keep the list up to date.  The list is monitoring almost 30,000 foursquare users now, and adding more all the time!
  • Techcrunch did a write up of the top foursquare user’s list on 12/3.  Funny how it turned out to be an article about the most stalker-friendly people on the web.  Thanks for the write-up MG!
  • Both foursquare and Twitter have white listed Osnapz, so that Osnapz can make lots of API calls to keep all our member data and stats up-to-date
  • Updated the top foursquare users list to also rank users by # of checkins, checkin days, and venues visited.  This is only for Osnapz members who’ve linked their foursquare account though.
  • Had to disable YouTube integration for now, because I was previously using Google’s AuthSub for authentication, which had problems.  I attempted to switch to using OAuth, but haven’t managed to get it working yet, so till that’s figured out, YouTube will be disabled.  Members who already have YouTube badges won’t be affected.
  • Working currently on adding LinkedIn, since they recently opened up their API to all developers!
  • Working on a really cool new feature to display your true social media score!

A couple of cool new features have been added to Osnapz in the last few weeks, all related to the red hot foursquare site. Check them out if you’re not already familiar with their site.

You can now register and sign in with your existing foursquare account, using OAuth, which means as usual, Osnapz will never have access to any of your private login information. Or if you’re already an Osnapz member and want to add your foursquare account, head over the ‘social sites’ tab in your member account to add foursquare. Once added, all your existing foursquare badges will be imported into Osnapz!

There’s also a new list of top foursquare players, so you can see who’s got the most friends and mayorships. You can view all players across cities, or select the city you’re interested in. BTW, this list was heavily inspired by Twitterholic. The list is updated randomly many times a day, so if you think you should be on the list but don’t see your name, be patient, or you can message me at @getosnapz on Twitter and I can add you.

More new foursquare features are in the works as well, so check back soon!