Scrapers / Developer & File Tools

Keyword & Keyphrase Extractor from Text
hipersoft/keyphrase-extractor
Pull the most important keywords and multi-word key phrases out of any text — articles, reviews, transcripts or documents. Ranked by relevance with scores, frequency and word count. Great for SEO, tagging, content analysis and RAG. Process one text or many at once. Output JSON, CSV or Excel.
Total users
2Monthly users
1Total runs
36Per keyphrase extracted
$0.0003Last rebuilt
Oct 28, 2026Overview
Automatically pull the most important keywords and multi-word key phrases out of any text with the Keyword & Keyphrase Extractor. Feed it an article, product review, transcript or document and get a ranked list of the phrases that actually matter — with relevance scores, frequency and word count — exported as JSON, CSV or Excel.
Great for SEO, content tagging, topic analysis, trend spotting, metadata generation and RAG / LLM pipelines, this tool surfaces the key ideas in text without any setup, training or code.
What it does
- 🏷️ Extract key phrases — finds meaningful multi-word phrases (not just single words) that summarise the text.
- 📊 Ranked by relevance — each phrase comes with a score so you can take the top ones.
- 🔢 Frequency & length — see how often each phrase appears and how many words it spans.
- 📚 Batch many texts — analyse a whole list of documents in one run, each labelled by document.
- ⚙️ Tunable — cap how many phrases to return and set a minimum word length to cut noise.
- ⚡ Fast & private — processes text directly with no external calls; nothing to configure.
- 📤 Export anywhere — JSON, CSV or Excel, or straight into a spreadsheet, CMS or workflow.
Example output
{
"documentIndex": 0,
"rank": 1,
"phrase": "minimal generating sets",
"score": 8.67,
"frequency": 1,
"wordCount": 3
}
How to use it
- Paste your text (or add several texts in the list).
- Choose how many keyphrases per text you want and the minimum word length.
- Run, and download the ranked keyphrases as JSON, CSV or Excel.
Input fields
| Field | Description |
|---|---|
| Text | The text to analyse. |
| Multiple texts | Optional list of separate texts to analyse in one run. |
| Max keyphrases per text | How many top-ranked phrases to return per text. |
| Minimum word length | Ignore words shorter than this many characters. |
| Max results | Maximum total keyphrases across all texts (0 = no limit). |
Output fields
documentIndex, rank, phrase, score, frequency, wordCount, collectedAt.
Popular use cases
- SEO & content — discover the key phrases in an article to guide titles, tags and meta descriptions.
- Tagging & taxonomy — auto-generate tags and categories for a content library.
- Review & feedback analysis — surface recurring themes across customer reviews or survey answers.
- Research & summarisation — pull the core concepts from long documents fast.
- RAG & LLM pipelines — attach keyphrase metadata to chunks for better retrieval and filtering.
- Trend spotting — extract phrases across many documents to see what's rising.
FAQ
Do I need an account or key? No. Paste your text and run.
How does the ranking work? Phrases are scored with a well-established keyword-extraction method that rewards distinctive multi-word phrases over common filler words. Higher score = more central to the text.
What languages are supported? It works best on English text. Other languages will still return phrases, but scoring is tuned for English stopwords.
Can it handle many documents at once? Yes — add a list of texts and each is analysed separately, with a document index on every result.
Can I export to Excel or Google Sheets? Yes — results download as JSON, CSV or Excel and integrate with Sheets, CMSs and automation tools.
Surface the keywords and key phrases that define any text — ranked, scored and export-ready for SEO, tagging and AI pipelines.
Input
| Field | Type | Description |
|---|---|---|
textText | string | The text to analyse. Paste an article, review, transcript or document. For multiple texts, use the list below. |
textsMultiple texts | array | Optional — a list of separate texts to analyse in one run. Each is processed independently and labelled by document. |
maxKeyphrasesMax keyphrases per text | integer | How many top-ranked keyphrases to return for each text. Default: 20 |
minCharsMinimum word length | integer | Ignore words shorter than this many characters (helps drop noise). Default: 2 |
maxItemsMax results | integer | Maximum total keyphrases to output across all texts (0 = no limit). Default: 0 |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~keyphrase-extractor/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": "Apify is a cloud platform for web scraping and browser automation. Developers build Actors that extract structured data from websites, monitor prices, and feed machine learning pipelines. In 2024 the company expanded its Store with thousands of ready-made tools used by businesses in Europe, North America and Asia.",
"texts": []
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/keyphrase-extractor").call(run_input={
"text": "Apify is a cloud platform for web scraping and browser automation. Developers build Actors that extract structured data from websites, monitor prices, and feed machine learning pipelines. In 2024 the company expanded its Store with thousands of ready-made tools used by businesses in Europe, North America and Asia.",
"texts": []
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/keyphrase-extractor').call({
"text": "Apify is a cloud platform for web scraping and browser automation. Developers build Actors that extract structured data from websites, monitor prices, and feed machine learning pipelines. In 2024 the company expanded its Store with thousands of ready-made tools used by businesses in Europe, North America and Asia.",
"texts": []
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Keyphrase extracted Charged for each keyphrase returned. | $0.0003 | $0.0001 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Bulk Image Downloader
Download thousands of images from a list of URLs and store each in the key-value store with a public link. Returns content type, size, dimensions and SHA-256 per image. Bulk-ready. Great for datasets, backups and media pipelines.
8,102 runs · 103 users · $0.056 / url processedText to Speech
Convert any text to natural-sounding speech as an MP3 download. 300+ premium neural voices across 70+ languages, adjustable rate, pitch and volume. Great for voiceovers, videos, accessibility and audio content. No setup.
278 runs · 22 users · $0.01 / audio generatedGoogle Maps Email Extractor
Search Google Maps for businesses, then crawl each business website to extract emails, social profiles and extra phone numbers. Turns any Maps search into a ready lead list. No setup.
159 runs · 8 users · $0.006 / business lead scrapedWebsite Screenshot
Capture full-page or viewport screenshots of any URL as PNG or JPEG, at any device size. For monitoring, previews, thumbnails and automation workflows.
156 runs · 3 users · $0.004 / screenshot capturedBulk URL Status Checker
Check thousands of URLs over plain HTTP: status codes, broken links (404/410/5xx), full redirect chains, response time, content type, page title and SSL certificate expiry.
154 runs · 13 users · $0.002 / url checkedGoogle Search Scraper
Scrape Google Search results (organic listings) for any query: title, URL, displayed URL, snippet and position. Multi-query, per-country/language, pagination. Uses Google SERP proxy — reliable, no captcha, no setup.
121 runs · 8 users · $0.001 / result scrapedSend the site and the fields. We build it and you get it first.