Visualizing Foursquare Check-Ins: Insights about New Yorkers through the lens of Foursquare data

[This article was first published on R – NYC Data Science Academy Blog, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.


“Are you listening?”, I asked my best friend as she tapped the screen of her space grey iPhone with her right index finger as she smiled at the screen. She wasn’t. I looked around the restaurant, and I noticed that she was not the only one engrossed in her phone.

This exchange inspired the idea for my Shiny app. The goal of my Shiny app was to visualize consumer behavior and interaction with social media. Specifically, what can we tell about New Yorkers by the way they use a specific app such as Foursquare?

Foursquare is a search-and-discovery app that gives users recommendations for things to do, and places to eat and visit based on the user’s current location and previous purchases, browsing, and check-in history.


The Data Set

Back in 2012, the Foursquare app was different. Users had to actively “check-in” on their app to receive recommendations. The dataset that I used contains 227,428 check-ins in New York, which were collected over ten months (from 12 April 2012 to 16 February 2013). Each check-in has location data associated with it as well as the type of venue and the time of the check-in. This dataset was used initially for studying the spatial-temporal regularity of user activity in LBSNs (research paper).

The venues of the check-ins are categorized into nine broad categories:
– Bar & Nightlife
– Business, Government & Other
– Education
– Food & Beverage
– Home & Personal
– Leisure & Outdoors
– Religious
– Shopping
– Travel & Transporation


Exploratory Data Analysis & Visualization

  •  Part A: NYC Map 

Under the tab, “NYC Map” on my app, I visualized each check-in on the map of New York. The control widget panel on the left side of the screen allows you to select between the layers you would like to see.

The yellow-orange animation shows all of the check-ins in the dataset.

The control widget panel on the right side allows you to toggle with other features of this map: Venue Category, Day of the Week, and New York Boroughs.

The inspiration for this interactive map came from a video (you can find the video under the tab, “Video” on my app) created by the data team at Foursquare, which visualized check-ins over the course of one year.


  • Part B: Analytics & Insights


Under the tab, “Analytics & Insights” on my app, I further explored and analyzed the data set through a bar chart and time series charts.

The bar chart shows you the variation in the number of check-ins over the weekdays versus weekend. An example of an insight that we can draw from the bar chart is that more people checked in from the Bar & Nightlife category over the weekend than the weekday.



The time series charts show the variation in the number of check-ins throughout the day per venue category. An example of an insight that we can draw from the time series chart of the Food & Beverage venue category is that the average New Yorker checked in around 5:00 PM, which is presumably when they were having coffee or dinner.



In this digital age, there is an enormous amount of data collected about each one of us. The real challenge is to harness insights to allow us to make data-driven decisions. The data scientists at Foursquare figured out how and perhaps, the insights they capitalized upon contributed to the app’s strong user base of 45 million (and growing).


Thank you for taking the time to check out my blog post. Feel free to check out my GitHub, leave a comment or send me a message on LinkedIn.

To leave a comment for the author, please follow the link and comment on their blog: R – NYC Data Science Academy Blog. offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)