Build your own SEO Tools – Ubersuggest, Google Docs and ImportXML()
If your an SEO or a online Marketer of any kind you’ve probably done more than your fair share of keyword research. We all have our own methods of doing keyword research so I won’t go into too much detail about that but there’s one universal job found in all of our methods.
Lists of keywords have to be built and then evaluated.
I’ve built a tool to do help out with building keyword lists using Google Docs and Google Drive. If you haven’t heard of Google Drive before then you should read all about what Google Drive is over on TekSocial.
If you don’t have time to read the whole article and build this tool yourself, don’t worry I’ve got you covered, just click the button below to get the app.
PattonWebz Ubersuggest Google DocBuilding your Keywords List
I make good use of Google Suggest to find keyword ideas in the early stages of building my lists. I use it for a couple of reasons. I know that those terms have search volume and I can easily see how searchers link my keyword with other search terms to get some natural language variants for my chosen term.
Getting the whole list of all suggestions Google will give for your keyword would take someone a long to do manually so we use tools like Ubersuggest to speed up that process and give us all the auto-suggest keywords for our term with an easy way to copy them all to the clipboard for use in other tools.
When you have that information you could then paste it into the Google Adwords Keyword Tool and get some search traffic information about each keyword to begin the evaluation process or combine the list with an existing list and remove duplicates.
There’s plenty of things you can do with an auto-suggest keyword list.
Ubersuggest Google Doc
We can go one better and automate the collection of all of those keywords from Ubersuggest into a Google Docs spreadsheet using ImportXML()
and XPath.
You could then still copy/paste them into Adwords or do whatever you want with them, as well as have a copy of the original list saved.
Building an Ubersuggest App
The steps to building a simple version of this app are surprisingly easy. Simply follow the instructions and copy the code into the suggested boxes.
- A cell to enter the keyword to search.
- Convert the keyword into a URL friendly version.
- Combine the keyword into the URL.
- Get the page with
ImportXML()
and use XPath to find the keywords in the page and place them in the sheet.
So just 4 steps? Not that hard!
- Cell A1 will be the cell that the keyword gets entered into.
- Click cell B1 and use
Substitate()
to change the keyword’s spaces into dashes:=substitute(A1, " ", "+")
- You need to combine the Keyword into the URL so we do it in 3 parts. Part 1 is the beginning of the URL, part 2 is the keyword, part 3 is the end of the URL which contains locale and search type. Put the start of the URL into cell C1
http://ubersuggest.org/?query=
and the end into D1&format=html&language=English%2FUSA&source=web
. The end of the URL requests standard web results in English for the USA locale. We can then build the query right in our import or we can build it in it’s own cell. We’ll be usingconcatenate()
to join the pieces to for the URL and putting it in it’s own cell. Click in cell E1 and paste=CONCATENATE(C1,B1,D1)
. That will join all the pieces and make a clickable link for you if you want it. - We get a copy of the page using
ImportXML()
and use Xpath queries to look through the page and find elements with a specific class. I’ve looked at the HTML of the Ubersuggest pages and they give their keywords the “keyword” class and search type class, which for us is “web”, and they are all listed inH4
tags. It’s all done with a single command so just paste this into cell A3 and the keywords will appear in a list moving downwards through the cells.=ImportXML(E1,"//span[@class='keyword web ']")
The more advanced version of this app was inspired by a Google Doc by Jeremy McDonald of BeetleWeb which accomplishes the very same thing as mine.
The advanced version brings in the ability to select the locale for results and it looks much nicer that the simple version. With a future version i have plans to enable the ability to change search type.
Both the simple and the advanced versions of this app are available in the Google Doc. Just click the button below to view the sheet, make a copy of it and then enter your own keyword in the box. It really is as simple as that.
PattonWebz Ubersuggest Google DocUpdated: April 10th.
Too many bots were scrapping Ubersuggest. He had to add a captcha to the site to stop mass bot scraping This, of course, affects us little guys who just want to scrape a single keyword at a time. Don’t know about you but I would rather the service remained open and I had to visit the site, solve the captcha and then scrape the keywords than it being closed down.
Until I figure out a workaround or find a way for users to solve the captcha within the Doc this one doesn’t work anymore 🙁
Thanks for this very detailed article. For some reason though, I can’t get it to work! I type in the keyword and the results are ‘n/a’. am i doing something wrong here? Thanks!
Aww damn… Ubersuggest have added a session level captcha when people submit a query 🙁
Unless they remove it I won’t be able to get the Doc working again but I’ll see if it would be possible to import the captcha to the Doc for manual completion 🙂
Is there a way to incorporate the session into the doc? Sorry if i’m way off here. All of this is new to me!
That is exactly what I was thinking!
But I’ve been trying to do that and I run into a problem. The session in the doc is Google’s session and every request from a doc creates a new session even when I solve the captcha in the doc the resulting fetch just brings another session and a new captcha 🙁
I have made use of this so often it’s not something I’d like to lose so I’m thinking if I can’t fix it I might just make my first leap into building Chrome extensions and make one that lets me request ubersuggest keywords.
For now I’m using this chrome extension to get the keywords to Google Docs: https://chrome.google.com/webstore/detail/scraper/mbigbapnjcgaffohmbkdlecaccepngjd?hl=en
Get the keywords using the scraper and Xpath query:
//span[@class="keyword web "]
While it’s not quite as good, it’s still better than manual copy/paste.
I love that tool!
So I’m not sure if it’s better, per se, but I found a different way of getting the KWs. After running entering the term and hitting ‘Suggest’ the results will be listed. Under the ‘Suggest’ button is the ‘Select all keywords’ button – when you click that the terms will be listed on the right column. Hit ‘get’ and you can just copy/paste the terms into Excel from the popup.
Thanks for looking into it though! Would love to know about your success with the Chrome extension!
Yeah that’s how ubersuggest is supposed to be used and it’s really not a hassle to do it that way. I just liked the way I could pull suggestions directly into a Google Doc then use them, combine them with other data, and then sort them.
But like I said it’s really not a hassle to manually get the keywords, I just wish I could still automate it for the sake of laziness haha!
Anyway I see you sent me a pretty interesting email so I’ll reply to that now 😉
Since iTunes Connect will also ask you for keywords, make sure you come up with a list of keywords for your translation team to localize. This is important for discovery. Otherwise international users in other languages won’t find your app when searching their localized version of the App Store.
I wasn’t aware that iTunes accepted keywords for apps uploaded to the App Store but this is a great tip for some people.
This is a very good tip to use outside of the App Store too. Localized and international SEO is becoming a big thing just now and it would be good to bear that in mind when doing your keyword research.
Thanks for the tip Mark!
FYI I accidently hit ‘remove url’ instead of ‘visit url’ when I was approving your comment so if you want to drop by and let me know what the URL was I would be happy to put it back in the URL field 🙂
not working anymore. seems that ubersuggest does not make u use such a url