Keyword Extractor
Pull the key phrases out of an article or draft with RAKE, shown next to a plain word count so you can see the difference. Runs entirely in your browser.
🔒 This tool runs entirely in your browser. Your files are never uploaded to a server.
Example shown — paste an article, a brief or a page of your own.
Key phrases — RAKE
Scored by co-occurrence, so multi-word terms rise to the top
Single words — by frequency
Plain counting, for comparison
This reads one document in isolation, so it can tell you what your text emphasises — not what is rare or valuable across the web. Search volume, competition and ranking difficulty all need external data this tool deliberately does not fetch. Nothing you paste leaves the page.
How to use it
- Paste an article, a brief, or a page you are auditing.
- Read the phrase list first — it is the one that describes the subject.
- Add your own recurring jargon to the ignore box if it is crowding the results.
- Copy the phrases, or take the CSV with scores.
Counting words finds the wrong things
Frequency counting is the obvious approach and it reliably surfaces the least informative words in the document. The sample text loaded above is the standard test passage for keyword extraction, and the two methods disagree completely:
by frequency by RAKE
systems 4 linear diophantine equations 8.50
set 3 minimal generating sets 8.33
minimal 3 linear constraints 4.50
solutions 3 natural numbers 4.00
types 3 strict inequations 4.00
Nobody reading the left-hand column learns what the passage is about. The right-hand column names it in the first two rows. That gap is the reason this tool leads with phrases and keeps the word count only as a cross-check.
How RAKE actually works
It is simpler than it looks, and it needs nothing beyond the document itself. First, split the text wherever a stop word or a punctuation mark appears — what is left between those breaks are candidate phrases. Then score every word:
word score = degree ÷ frequency
frequency = how often the word appears
degree = total length of the phrases it appears in
phrase score = sum of its word scores
A word that only ever stands alone has degree equal to frequency, so it scores 1. A word that always appears inside a three-word term scores 3. The effect is that a term is rewarded for the company it keeps rather than for how often it is repeated — which is why a phrase appearing once can outrank a word appearing four times.
Why there is no TF-IDF here
TF-IDF is the method people expect, and it cannot work in this setting. The IDF half — inverse document frequency — measures how rare a word is across a whole collection of documents. With one document there is no collection, so every word has the same document frequency and the term collapses to a constant. Any single-page tool offering you TF-IDF scores is either quietly comparing against a corpus you cannot see, or the number means nothing. RAKE was designed for exactly this case: one document, no outside knowledge, no training.
What it can and cannot tell you
It is good at answering "is this page about what I think it is about" — paste a draft and see whether the phrases that come back are the ones you intended to emphasise. It is useful for spotting a page that has drifted, for pulling tags out of a long document, and for checking that a brief and its output agree.
It cannot tell you what anyone searches for, how competitive a term is, or what a search engine thinks your page is about. Those need data from outside the page, and this tool fetches nothing. Treat it as a mirror rather than a market research tool.
FAQ
Why does the phrase list look nothing like the word count?
Because they answer different questions. Counting words tells you what is repeated; RAKE tells you what the repeated words are repeated *inside*. On the sample text, frequency puts "systems", "set" and "minimal" on top — all generic — while RAKE surfaces "linear diophantine equations" and "minimal generating sets", which are the actual subject.
How does RAKE score a phrase?
Each word gets its degree divided by its frequency, where degree counts the words it shares a candidate phrase with, itself included. A word that only ever appears alone scores 1; one that consistently appears inside a three-word term scores 3. A phrase then scores as the sum of its words, so longer terms made of words that always travel together rise to the top.
Why is there no TF-IDF?
Because TF-IDF needs a reference corpus to know what is rare, and this tool has exactly one document — the one you pasted. Anything claiming to give you TF-IDF from a single text is either using a hidden corpus or making it up. RAKE is designed for the single-document case, which is why it is the method here.
Can it tell me search volume or keyword difficulty?
No, and nothing that runs entirely in your browser can. Those figures come from search engine data. This tells you what your text emphasises, which is the useful half when you are checking whether a page is actually about what you intended.
What is the extra ignore list for?
Your own jargon. A company name or product that appears in every sentence will dominate both lists without telling you anything, so adding it to the ignore box lets the rest of the text show through.
Is my text uploaded?
No. Everything is counted in the page as you type, and nothing is stored or sent anywhere — which matters if you are checking an unpublished draft or a client brief.
How we compare
| Feature | Online Tool Store | Word-frequency counters | SEO keyword platforms |
|---|---|---|---|
| Multi-word key phrases, not just words | ✓ | ✗ | ✓ |
| Explains the scoring rather than hiding it | ✓ | Nothing to explain | ✗ |
| Shows both methods side by side | ✓ | ✗ | ✗ |
| Nothing uploaded, no account | ✓ | Varies | ✗ |
| Works on an unpublished draft | ✓ | ✓ | Usually needs a live URL |
| Search volume and difficulty | ✗ | ✗ | ✓ |
| Understands meaning and synonyms | ✗ | ✗ | Some, partly |
The right tool for checking what a document emphasises, with the scoring on show and your draft never leaving the page. It knows nothing about the outside world, so for search volume or competition you need a platform with real search data behind it.