Facebook Graph Search Update: Facebook Now Passing Keywords to Destination Websites, Can Track in Google Analytics

Facebook Graph Search Results and Not Provided

Facebook Graph Search launched in January, and I was fortunate to have early access.  Upon gaining access, I began heavily testing Facebook’s new social search capabilities.  That research led to my first post covering my initial thoughts about Graph Search, including its impact on local search, privacy, reputation management, etc.  You should check out that post out after reading through this one.

Graph Search and Not Provided
One (unfortunate) point I covered in my post was the apparent use of “not provided” in Graph Search.  If you’re not familiar with “not provided”, last year Google started encrypting searches for users that were logged into a Google account.  As a result, the keywords that users searched for would not be passed in the referrer when they visited your website.  Essentially, webmasters started seeing “not provided” show up in their analytics reporting versus the organic keywords that led to the site. Needless to say, this was a huge problem and the “not provided” numbers have been growing ever since.  For some websites, “not provided” accounts for over 60% of all organic searches.

Now back to Facebook Graph Search and how it handles searches.  When Graph Search launched, I quickly realized that Graph Search falls back to Bing results when it can’t answer your query.  You can read my post about Graph Search to learn about the autocomplete funnel that you get forced down.  So, if you aren’t searching for photos, people, places, or interests, then Facebook will display the “web results” for the query (which is basically the Bing results).

Facebook Graph Search Falls Back to Bing Results

During my testing, I quickly checked the referrer when clicking from the fallback results to websites and noticed that Facebook was not passing the keyword in the referrer!  It was basically Facebook’s version of “not provided”.  When you checked Google Analytics, the visit looked like a typical referring source (a “Social” visit from Facebook).  You couldn’t see the keyword that triggered the visit.  Needless to say, I thought Facebook was making a big mistake.  If Facebook passed the keywords along, business owners, advertisers, SEO’s, etc. would love them for doing so…  We could all start to track the impact of Graph Search (at least any searches that fall back to Bing).   I guess we were out of luck… or were we?

SES NY Session Research and the “Referrer” Moment
SES NY is this upcoming week, and my session covers Facebook Graph Search (based on the research I mentioned earlier).  While I was finalizing my presentation over the past week, I noticed something very interesting.  I started a slide on “not provided”, and then double-checked some searches leading from Facebook to external websites.  What I found surprised me!

I noticed that the keyword was now being passed along in the referrer!   Below is an example of a new referrer.  You can clearly see the q={keyword} being passed now.

Facebook Passing Keywords in the Referrer

That’s awesome, but now we need to track the keywords.  Read on.

Google Analytics and Graph Search
As you can guess, I jumped into Google Analytics to see how this was being picked up.  Since Facebook isn’t an official search engine in GA, it was still showing up as a referring site (without the keyword showing up).  But, since the q= querystring parameter was being passed in the referrer, I knew I could surface those keywords via advanced filters.  So, I quickly set up a new profile and added a filter that would capture graph searches from Facebook.  And it works.  I explain how to quickly set this up below.

How to Track Graph Searches in GA
I’m not going to explain the inner workings of advanced filters in this post (it could easily be a series of posts).  Instead, I’ll show you how to quickly set up an advanced filter that will capture graph search keywords, and then report them in Google Analytics.  Note, you can tackle this several ways, and this is just one solution.  Feel free to tailor your own GA setup as you see fit.

1. Launch Google Analytics and Access Your Website Profiles
You can access your profiles by clicking the “Admin” button in the upper right-hand corner of the GA interface.  The first tab should list all profiles for the website at hand (for the “property” in GA).

Profiles in Google Analytics


2. Create a New Profile
Click the “New Profile” button and give it a name.  Then choose your reporting time zone.  Then click the “Create Profile” button.

Create a new profile in Google Analytics.


3. Add an Advanced Filter
Once you create your profile, you should click the “Filters” tab so you can add an advanced filter.

Add a new filter in Google Analytics


4. Adding a New Filter
Click the “New Filter” button, and then make sure the settings match what is list below.  We will name the filter, create a custom filter, select advanced, and then enter patterns to match in order to capture graph search keywords (and then report them in GA).

How to add an advanced filter in Google Analytics


5. Save the Filter
Click “Save” at the bottom of the form and you should see your new filter listed for your profile.


6. Check Your Reporting
Now you need to wait for graph searches to come in.  Note, this filter will just pick up graph searches that fall back to Bing and that lead to your site.  If you have access to Graph Search, then you can quickly test it out by searching Facebook for a query that your site ranks for in Bing organic.  Then click through the Facebook Graph Search results and check your reporting later on (the standard GA reporting isn’t real-time, so the reports will lag slightly).

To find the new data, you can click the “Sources” Tab, and then click “All Traffic”.  Then find “facebook.com” and click through.  Then you can add a secondary dimension for “User Defined Value” which will contain your graph search keywords.  When setting the secondary dimension in your reporting, click “Content” and then select “User Defined Value”.  Note, the new advanced filter will capture all q={keyword} combinations.  That’s why you need to drill into “facebook.com” in the sources to isolate Graph Search results.

Adding a secondary dimension in Google Analytics


Your reporting will look something like this:

Viewing graph search keywords in Google Analytics

Once you start picking up graph searches, you can tie those searches to site activity, performance, conversion, etc.  In addition, we can start to see how many graph searches are being conducted that drive users off of Facebook.com (meaning those searches can’t be answered yet by Facebook Graph Search).

Summary – Capture Graph Search Keywords
Again, I’m glad to see that Facebook is passing keywords along in the referrer!  For a while, I thought we were going to be stuck with another “not provided” situation.  Although Facebook Graph Search has only been rolled out to a few hundred thousand users, it’s only a matter of time before the 1 billion+ active user base gains access.  And that will be across mobile devices too.  My recommendation is to set up this advanced filter today and start tracking graph searches.  You never know what you are going to find.  :)

Last, but not least, if you are attending SES NY this week, and are interested in learning more about Facebook Graph Search, you should definitely check out my session.  It’s at 2:15 on Thursday, March 28th.  I’ll be covering a range of important findings, based on my research.




23 thoughts on “Facebook Graph Search Update: Facebook Now Passing Keywords to Destination Websites, Can Track in Google Analytics”

  1. Great example, but I thought in using _addOrganic (check https://developers.google.com/analytics/devguides/collection/gajs/methods/gaJSApiSearchEngines#_gat.GA_Tracker_._addOrganic ).

    I think it would work since the KW is on the URL, my only worry would be that maybe all visits from facebook.com can be treated as organic, even if they are not usign graph search (I think 99% of Facebook referrals are not using graph search).

    What do your think about this option?

    Thanks for your post and all the best at SES NY.

    • Hey, thanks for your comment. Yes, you can definitely refine your tracking code to add more search engines. I mentioned in my post that there are several ways you can track the keywords from Graph Search (and applying a filter is just one of them).

      That said, tracking FB as a search engine could potentially throw off other reports in GA. I think applying the filter in a new profile is the best way to get the data (in non-Universal Analytics setups).

      And thank regarding SES NY! I have a lot of findings to share on Thursday. :)

    • Wow, great question. Something tells me it will take a while for Google to add native reporting for Graph Search to Google Analytics. That said, if Graph Search starts being heavily used (once rolled out fully), Google will be forced to add it. I guess time will tell. :)

    • Hi Brittany. Yes, the visits are from facebook.com, and are slotted in the “Social” category. But if you set up the filter I explained above, you can grab the q={keyword} parameter.

      When I first gained access to Graph Search (~1/17), Facebook was not passing the keyword data through. I even mentioned that in first post on Graph Search (since “not provided” is such a problem with Google search data). Needless to say, I was pretty excited to see the keyword data being sent in the referrer. :)

      If you need any more information, just let me know. I’d be happy to share more about what I’ve found.

  2. Glenn,

    Excellent overview, thanks. Where am I entering the use defined values? I’m seeing the traffic from Facebook, my reporting is still showing (not set)

    • Hi Eric. Did you set up the advanced filter? If you did, you can go into Traffic Sources, then click facebook.com. Once there, you can add a secondary dimension to view “User-Defined Value”. That will show you the keywords leading to your site. I hope that helps.

  3. Essential. :) There are many powerful aspects to Google+, including posts that are ranking well, authorship tied to your G+ profile, etc.

    And then of course you have some amazing people to connect with. I’ve really enjoyed using G+.

    • Hi Lisa. If you are seeing (not set), then those are typical visits from Facebook (referring visits). That would be replaced with the keyword from the graph search fallback (the Bing results) if someone searched and clicked through.

      If you have graph search, you can easily test this out by searching for something you rank for in Bing, and then clicking through to your site. That should show up in your reporting. Let me know how it works for you.

    • Facebook is slowly rolling out Graph Search. They have no firm plans for the rollout, so you might have to wait a while. As of now, it’s only rolled out to a few hundred thousand users (out of 1 billion+ active users).

  4. Great article, Glenn!

    I had a question, though. I set this up for several clients and i’m only receiving User Defined Values of (not set). I tested it myself several times with different keywords, hoping they would show up.

    Any ideas? I really want to start seeing these keywords! :)


    • Hi Quincy. I’m glad you enjoyed my post, and I hope you can get this working for your clients. If you are seeing “not set” for your user defined value, then it can mean one of two things. Your advanced filter isn’t set up correctly or your clients aren’t receiving any visits from the fallback results.

      If you have access to graph search, and you are testing out keywords, then you absolutely should see this working. Double check the filter and test again. If you still can’t get it to work, let me know and maybe I can take a quick look. I hope that helps!

      • Hi Glenn!

        Thanks for responding to my post – I was able to see one KW show up on Friday! (yay!) I’m not sure if maybe it wasn’t picking them up the first day when I set up the filter or what, but it looks to be correct. I will let you know if any of my future tests don’t show up, and thanks for your willingness to help!


        • Awesome, glad to hear it’s showing up. Look for those numbers to increase as Graph Search rolls out to more people (and to mobile eventually).

  5. also when we create an account on google analytics, what do we put in for the website url? Just the url that pops up when we click our profile page?

    • Mark, if you are setting up a new website in GA, then enter the domain name of the website you want to track (the full URL for the domain). I’d have to see the exact step you are on in GA, but I believe that’s what you are referring to. I hope that helps.

  6. Hey, no problem Mark. I’m glad you found my post. It’s an asterisk. Keep in mind that Graph Search is only in beta (and has only rolled out to a few hundred thousand users). If you have Graph Search in your FB account, simply test it out for your own site and click through. Then check the reporting. You should see that search listed.

Comments are closed.