Keyword Clustering Tool

Paste a keyword list and see it grouped into topics by the words the keywords share — so you can tell how many pages you actually need, which keywords belong together on one of them, and which search intent each page has to answer.

Paste your keyword list

Read in your browser with the FileReader API. Nothing is uploaded, so client keyword lists are safe here.

Loose groups on a single shared word, tight insists on the longest shared phrase it can find. Run the list twice and keep the split that matches how you want to write.

Anything smaller is listed separately as a one-off keyword rather than forced into a group it does not belong in.

Everything runs in your browser — the keyword list you paste is never uploaded anywhere.

What Is Keyword Clustering?

Keyword clustering is the act of taking a flat list of search terms and sorting it into groups that each deserve one page. It matters because keywords and pages are not the same unit. A list of 200 keywords is not 200 posts to write; it is usually somewhere between fifteen and forty topics, each with one keyword people search most and a handful of close variants that the same page will rank for without any extra effort. Writing a separate page for every variant is the single most common way a small site ends up with thin pages competing against each other.

This tool does that grouping on the words themselves. It normalises every keyword, drops the function words that carry no topic — the, for, to, how and the rest — reduces plurals to their singular form, then repeatedly finds the phrase shared by the most keywords still unassigned and pulls those keywords out as a cluster. The result is a list of topics, each named after the phrase its keywords have in common, with the keyword you should target first marked as the primary.

How to Use the Keyword Clustering Tool

  1. Paste your keywords into the box, one per line. A bare list is enough.
  2. If you have search volumes, put each one after the keyword, separated by a comma or a tab. Volumes are what let the tool pick the primary keyword for each cluster and sort the clusters by how much demand they represent.
  3. Or use the file chooser to open a CSV or TSV export. Columns are identified by their header names, so a Keyword Planner export, a Search Console export or a block of cells copied out of a spreadsheet all read correctly.
  4. Choose a grouping tightness. Balanced suits most lists; the other two settings are there because the right number of pages is a judgement call, not a calculation.
  5. Click Group keywords, read the findings, then download the CSV if you want the clusters in a spreadsheet to plan from.

Up to 2,000 keywords are read in one pass. If your list is longer than that, split it by topic area or by language first — clustering a mixed-language list produces groups that only look sensible.

How the Grouping Actually Works

Being able to predict what the tool will do is more useful than a black box that produces a prettier chart, so here is the whole method.

  • Normalising. Keywords are lowercased, punctuation and apostrophes are removed, and repeated spaces collapse. Two lines that differ only in punctuation are treated as the same keyword, and the duplicate is reported rather than silently dropped.
  • Stop words. Function words are ignored when building groups. how to write a meta description is reduced to write meta description, which is why it lands in the same cluster as meta description length.
  • Plurals. A light singularisation step means queries and query, or shoes and shoe, count as the same word. Words ending in ss, us and is are left alone so that analysis and status survive intact.
  • Shared phrases. Every run of one, two or three consecutive remaining words in each keyword becomes a candidate. The tool counts how many keywords contain each candidate, picks the strongest, assigns every keyword containing it to a cluster, and repeats on what is left.
  • Tightness. This is only a change to which candidate counts as strongest. Loose takes the phrase found in the most keywords, which produces a few broad clusters. Tight prefers the longest phrase, which produces more and narrower ones. Balanced multiplies the two, so a two-word phrase shared by four keywords beats a single word shared by six.
  • One-offs. When no phrase is shared by enough keywords to meet your minimum group size, whatever is left is listed as one-off keywords. These are not failures. They are usually either genuinely separate topics or the start of a cluster you have not finished researching.

Two consequences are worth knowing. Because grouping is done on shared words, synonyms that share no words stay apart: cheap flights and budget airfare will not meet, even though one page should serve both. And because the method is deterministic, the same list and the same settings always produce the same clusters, which is what makes it usable for a plan you have to revisit next month.

What to Do With the Clusters

One cluster, one page

Treat each cluster as a single URL. The primary keyword — the highest-volume member, or the shortest when you have given no volumes — is what the title, the H1 and the slug should be built around. The rest of the cluster is your section list: those are the variants and the sub-questions the page has to cover if it is going to rank for more than its primary term. Build the slug from the primary keyword with the URL Slug Generator, and draft the title and meta description against the real search results in the SERP Preview Tool before producing the final tags in the Meta Tag Generator.

Split the clusters flagged as mixed intent

The tool labels every keyword it can as informational, commercial or transactional, based on the words people use: how, what, guide and examples on one side; best, review, vs, tool and free in the middle; buy, price, cost and near me at the commercial end. A cluster containing both what is schema markup and schema markup generator shares every important word and still needs two pages, because one searcher wants an explanation and the other wants a text box to type into. When a cluster is flagged as mixed, split it along the intent line, not along the wording.

Keywords with no intent signal at all are left unclassified rather than guessed at. A bare head term like meta description length genuinely could be either, and the only way to know is to look at what Google is currently ranking for it.

Break up the clusters that are too big

A cluster with more than a dozen keywords is usually a topic, not a page. Read its keyword list and you will normally see two or three sub-topics inside it that each deserve their own URL, with the broad term kept as a hub page that links to them. Re-running with tightness set to Tight is the quick way to see where those seams fall.

Use the clusters to find cannibalisation you already have

Clustering is just as useful backwards. Export the queries your site already gets impressions for, cluster them, and then check how many of your existing URLs are chasing each cluster. If two pages are both trying to rank for one cluster, that is keyword cannibalisation, and it is why neither of them does well. Confirm how much the two pages actually overlap with the Duplicate Content Checker, and when they genuinely are the same page twice, keep the stronger URL and point the other at it — then verify the tag landed with the Canonical URL Checker.

Where to Get the Keyword List

The best list for a site that already has traffic is its own Search Console export, because every row in it is a search a real person made that your site was already shown for. Download the queries report, paste it into the Search Console CSV Analyzer to find the terms sitting in striking distance, then bring the same export here to see which of them belong on one page. The two tools answer different halves of the same question: which keywords are worth work, and how many pages that work amounts to.

For a new site or a new section, Google Keyword Planner remains the most accessible free source of volume figures, and its CSV export reads straight into this tool. Autocomplete suggestions, the People also ask box and the related searches at the foot of a results page are all free and all produce the long question-shaped keywords that cluster particularly well. However you collect them, resist cleaning the list by hand first — near-duplicate wording is exactly what the clustering is for, and removing it in advance only hides how much of your list was one topic all along.

Once a cluster is written, the checks that follow are about whether the page delivers on it. The Word Frequency Analyzer shows whether the draft is genuinely about its primary keyword or has drifted onto a secondary one, and the Content Readability Checker tells you whether it reads at the level its audience expects. When several cluster pages are live, the Internal Link Analyzer is what confirms the hub-and-spoke links between them actually exist.

What This Tool Cannot Tell You

It groups the words you give it, and it makes no requests of its own. That is what lets you cluster a client's keyword list without it leaving your machine, but it also means it knows nothing beyond your list. It cannot supply search volumes you have not pasted in, it cannot estimate how hard a keyword is to rank for, and it has no idea what is already ranking for any of these terms.

It is also not SERP-overlap clustering, which is the technique agencies pay for: grouping two keywords together because Google returns largely the same ten results for both. That method is the most faithful to how search engines see topics, because it uses their own judgement rather than a string comparison — but it needs a ranking API and a few thousand live searches, so no browser tool can do it. Word-based clustering agrees with it most of the time on a normal keyword list, and disagrees in two predictable places: synonyms that share no words will be split when they should be joined, and keywords that share words but not meaning will be joined when they should be split. Read every cluster before you commit it to a content plan, and search the primary keyword to confirm the results page is answering the question you think it is.

Frequently Asked Questions

No. A bare list of keywords clusters exactly the same way, because the grouping is done on the words rather than the numbers. What volumes add is prioritisation: with them, clusters are sorted by total demand and the primary keyword of each cluster is its highest-volume member. Without them, clusters are sorted by how many keywords they contain and the primary is the shortest keyword in the group, which is usually the head term. You can also paste a clicks or impressions column in place of volume — anything that measures demand works as a sort key.

One primary keyword and as many close variants as the cluster contains — commonly five to fifteen. A page ranking well for its main term almost always ranks for dozens of variations nobody planned for, which is why building separate pages for meta description length and how long should a meta description be gains nothing and costs you two thin pages instead of one good one. The test is intent, not wording: if the same answer satisfies both searches, they belong on one page.

Almost always because they share no significant words. Clustering here is string-based, so serp preview and google snippet tool have nothing in common to group on even though one page should serve both. Try the Loose setting, which will group on a single shared word, and if they still stay apart, merge them by hand — a plan is allowed to overrule the tool. The reverse case happens too: a word that means different things in different keywords can pull unrelated terms together, which is why every cluster is worth reading before you act on it.

It means the cluster contains keywords from two different stages of the same search. The practical consequence is that one page cannot win both: a guide will not outrank the tools listed for best X tool, and a product page will not outrank the explainers for what is X. Split the cluster into a guide and a commercial page, link them to each other, and let each one target the intent it suits. The flag appears only when two intents each account for a third or more of a cluster of three keywords or larger, so a single stray keyword will not trigger it.

Usually, yes. Columns are matched on their header names rather than their position, so any file with a keyword, query or term column plus a volume, searches or impressions column will parse, in either order, comma or tab separated. With no recognisable header the first column is read as the keyword and the first numeric column as the volume. Volumes written as 1,300, 1300 or 1.3K are all understood. Copying a block of cells straight out of Excel or Google Sheets works because that copy is tab separated.

No. The paste box, the file chooser and the CSV download are all handled in JavaScript in your browser. Nothing is sent to a server, nothing is stored, and closing the tab discards it. There is no account to create and no API key to find, which is also why the tool cannot add volumes or difficulty scores for you — it only ever sees the list you give it. That holds for client keyword research and unpublished plans as much as for your own site.