Skip to main content
  1. Home
  2. Social Media
  3. Web
  4. Legacy Archives

How Facebook’s Graph Search works…sort of

Add as a preferred source on Google
facebook graph search icon
Image used with permission by copyright holder

Even though Graph Search hasn’t been rolled out to everyone yet, it has managed to become the talk of Facebook lately; and for good reason. For those unfamiliar, Graph Search is Facebook’s answer to the personalized results you can get from search engines like Google and Bing – just far more contextualized and with way more specific data about your social circle (and your social circle’s social circle).

How exactly Graph Search works has remained a bit of a mystery, but recently Facebook’s Engineering blog gave a no-holds-barred look at what makes Graph Search’s gears turn.

Recommended Videos

By comparison, Facebook’s older search engine (called PPS) was elementary. Keywords were the only factors that PPS used to generate results . Even its “Search Filter” was rudimentary, narrowing down results based on broad topics like People, Groups, and Pages, to name a few.

Now let’s dig into Graph Search. Over the past few years, Facebook has been slowly integrating new features that would eventually feed Graph Search. Take, for example, “Typehead,” which is essentially Facebook’s answer to Google’s Autocomplete. As you type a query, the search engine makes an educated guess as to what you’re searching for and suggests results in a dropdown box. Typehead introduced in 2009 – long before Graph Search was introduced – but it wasn’t as sophisticated then as it is now inside Graph Search.

This is where things start to get complicated. To conceptualize how Graph Search works, think of the bigger picture of relationships between friends, pages, photos, posts and groups as a vast web. Friends have a relationship to friends, pages and photos via likes and comments. And these pages, photos and groups have a relationship with each other.

fbid graph search
Image used with permission by copyright holder

Facebook’s engineers shared the above diagram to try to break things down a little bit. Picture the large dots, which we’ll call nodes, as nouns – they could be friends, pages, groups, posts and even your name. How these nouns are related to each other are represented by the arrows (which include relationship attributes like “Friend,” “Tagged,” “Photo,” “Event,” “Likes,” and so forth) called “Edges.” So, what you see in this diagram is how user Sriram Sankar would be related to the page titled “Breville.” In this case, the relationship is via a “like.”

Taking a step back and looking at the bigger picture, you might be astonished at how Facebook has managed to map out a network piggybacking on our social nature. It even knows the relationship between Queen Elizabeth and George VI and the history of Star Wars, says Facebook Engineer Sriram Sankar.

To make the experience for users more search engine-like, Facebook moved away from solely relying on keyword searches for Graph Search and decided on natural language processing. This means you can type searches the way you naturally speak and Graph Search’s algorithm will look at every single word you’ve typed and determine what you’re looking for.

The concept seems easy enough, but apparently executing it was easier said than done. With Facebook’s original search engine (1.0), actions on Facebook – check ins, likes, comments, your personal info, etc. – were only used to rank results.  With version 2.0, Graph Search indexes all of these actions to figure out the relationship between the words you’ve typed. For instance, if you search for “Mark Zuckerberg,” Graph Search needs to know that “Mark” and “Zuckerberg” refers to Facebook’s CEO, not people who happen to share the first name “Mark” and last name “Zuckerberg.” Programming Graph Search to know the difference wasn’t easy – and that’s where “Unicorn” enters the picture.

Simply put, Unicorn tags each node with numbers and uses it to decipher what you’re searching for contextually. Take a look at the following index, which was noted in the blog post as an example.

If Facebook were to index the names Mark Zuckerberg (fbid: 4), Randi Zuckerberg (fbid: 13755), Mark David Johnson (fbid: 1001) Randi Johnson (fbid: 5542), and David Johnson (fbid: 10003), the following  is how it might look. It’s a bunch of names and numbers and graphs right now, but you’ll understand what it means in just a minute (for reference: fbid refers to Facebook ID). 

mark → 4

zuck → 4

randi → 13755

zuck → 13755

mark → 1001

david → 1001

johnson → 1001

randi → 5542

johnson →5542

david → 10003

johnson → 10003

The name Mark Zuckerberg (Zuck) is tagged with fbid 4, Randi Zuckerberg is tagged with 13755, and so forth. This organization is applied without regard to the space between the names since the names are related. Potentially, a name like Mark could have as few as one entry (fbid number) or millions.

fb graph search unicorn
Image used with permission by copyright holder

This is important because Graph Search treats a name like “David Johnson” as a search for “David” and “Johnson.” But, as the grid above illustrates, Graph Search seeks to understand that relationship between the two names.

To figure out which “Johnson” you might be searching for, Facebook uses what it calls “importance” to pull results that Unicorn thinks are the most important to you.. To visualize how Unicorn would decipher what you’re looking for, look at the three dots under “Johnson.”  Of the possible results, the one that Facebook will spit back at you is the one considered most relevant. Facebook doesn’t get into the specifics of importance metric however, so there’s little light we can shed on how it works.

And there you have it. Now you should have a pretty good idea on how Facebook Graph Search works for you to impress your friends with, or to bring up in a bar conversation.

Francis Bea
Former Digital Trends Contributor
Francis got his first taste of the tech industry in a failed attempt at a startup during his time as a student at the…
New X phishing scam uses fake login alerts to steal your account
Scammers have copied X's own security emails almost pixel for pixel, and people are falling for it.
X app store listing on iPhone

You open your inbox and see an alert claiming someone just logged into your X account from an unfamiliar device. Your first instinct is to click through and lock things down immediately. That instinct is exactly what a new phishing scam is counting on.

As reported by The Guardian, a wave of fake X security emails is currently doing the rounds. They claim a new device has logged into your account and urge you to click a link to reset your password or review app access. 

Read more
After YouTube, TikTok is testing its own AI likeness detection tool
TikTok's new tool lets creators flag AI deepfakes of themselves directly.
Home page of TikTok on Web.

AI deepfakes have become a headache for creators, and TikTok is finally stepping up to fight back. Social media consultant Matt Navarra spotted the platform quietly testing a new opt-in tool that hunts down AI-generated content mimicking a creator's face, giving them the power to flag it directly.

https://twitter.com/MattNavarra/status/2078129989128450064

Read more
You can now generate songs in your iMessage chats
iMessage users can now turn chats into short AI-generated songs
Text, Business Card, Paper

Suno has added an iMessage extension to its iOS app, letting users generate 30-second songs from voice recordings or typed prompts inside a Messages conversation.

The feature is available in the latest version of the Suno app and requires both people in the chat to have it installed. Users can access Suno from the plus menu in Messages, create a track, and share it without opening the standalone app.

Read more