Practically everyone with an interest in SEO is excited about the possibilities of semantic search. While it seems mysterious and difficult to influence, I’ve managed to get myself and my employer’s recent merger into Google’s Knowledge Graph. Here’s how.
I’ve been tinkering with Freebase and structured data for so long I can’t be sure exactly how this happened, but it turns out I’ve got a Knowledge Graph result. Which isn’t bad going since Knowledge Graph describes entities and I am, well, a nonentity.
I’m not being entirely self-abasing, either. Apple Dictionary (lexicon of lexicons) defines nonentity as follows:
a person or thing with no special or interesting qualities; an unimportant person or thing: a political nonentity.
All this navel-gazing serves a point: Google’s Knowledge Graph is not a mysterious and unfathomable arbiter of importance and notability. You just need to feed it the right data in the right way.
Adding entities to Freebase (and WikiData)
I know that a big factor in getting this to work is Freebase, the “open, shared database of the world’s knowledge” Google acquired around five years ago. I know this because my Knowledge Graph result shows my birthplace, which is relatively obscure and, as far as I know, is not published anywhere else on the web.
Adding my employer to Freebase was an interesting test since we’d gone through a merger. Digitas and LBi had become DigitasLBi and, since each of the merged entities were already recognised by Knowledge Graph, I had a unique opportunity to see if I could create a new entity.
While I was in the business of creation, it was only natural to add myself to Freebase too. I added my name, profession, employer, place and date of birth, etc.
Now, if you want to try this yourself you’re already at a disadvantage: Freebase is in the process of being shut down. Apparently it’s to be replaced by WikiData, though I’ve yet to see any movement on that front. Still, give it a try; there’s nothing to lose.
Adding structured data
Structured data, Schema.org, microdata, RDFa, microformats, JSON-LD, and more besides get badly jumbled in certain quarters of the SEO echo chamber, so it’s worth pausing to clarify.
So I tricked out my site with structured data from the Person schema. Initially I did this with HTML5 microdata, and later moved to JSON-LD to get around inheritance problems in HTML.
If you’re interested, I wrote a post some while back on getting WordPress to output microdata, and touched on some of the difficulties entailed in making that work without designing page structure with that purpose in mind from the start. Basically the problem is you tend to have related data spread all over the page, which works for humans but gets annoying when you need to mark up elements of said data that aren’t all descended from the same element. JSON-LD avoids that by just bunging it all in one place.
Anyway, I digress. The point is, use the Person schema and within it, use the sameAs attribute to refer to your Freebase (or, presumably, WikiData) entry’s URL. I also referred to a couple of my social profiles which, interestingly enough, is now explicitly supported by Google as a means of putting social profile links into Knowledge Graph entries.
Wait for it to get processed!
Now comes the hard part: wait. I managed to merge the Knowledge Graph results for the constituent companies in my employer’s merger in around a month, maybe two (often results will appear and disappear before stabilising).
My own arrival on the entity search stage took a little longer. In fact, I’d given up and only noticed last week when someone else happened to search me. So it’s a little unpredictable. If you’re doing it for clients, I advise managing their expectations right from the beginning.
Note: You might also want to read my follow up to this article, How I Got a Knowledge Graph Result (Redux).