Free keyword research CLI — no API keys, no signup, no paywall. Google Trends, intent classification, KD scoring, funnel analysis, and GEO optimization in one terminal command.
SEO tools are expensive. Ahrefs starts at $99/mo. Semrush at $129/mo. Most free alternatives either require API keys, cap usage, or only offer shallow data.
keyword-engine is different: 100% free, no API keys, no rate-limit accounts, no credit card. Four free data sources combined into one pipeline.
$ python keyword_engine.py "ahrefs free alternative, keyword difficulty checker"
[1/5] Google Autocomplete...
5 suggestions | Tool: 80% | Buy: 100% | Learn: 0%
Funnel: BOFU (decision layer) | Priority: HIGH
[3/5] Bing SERP structure...
Type: commercial | Edu: 0 | Commercial: 10
KD: 35/100 (sweet_spot) [SWEET SPOT!]
GEO: 40/100 (medium) → ['comparison_table']
Page: comparison (/alternatives/)One command gives you: search intent → funnel stage → KD difficulty → GEO score → page type recommendation.
Most keyword tools stop at volume + difficulty. keyword-engine adds:
| Feature | Ahrefs Free | Semrush Free | keyword-engine |
|---|---|---|---|
| Search volume estimate | ✅ (limited) | ✅ (10/day) | ✅ Trends-based (unlimited) |
| Keyword difficulty | ✅ | ✅ | ✅ SERP-based (free) |
| Search intent | ❌ | ✅ | ✅ Autocomplete analysis |
| Funnel stage (BOFU/MOFU/TOFU) | ❌ | ❌ | ✅ |
| GEO score (LLM citation potential) | ❌ | ❌ | ✅ |
| Page type recommendation | ❌ | ❌ | ✅ |
| Daily SEO report (Markdown) | ❌ | ❌ | ✅ |
| API key required | Yes | Yes | No |
| Price | $99/mo | $129/mo | $0 |
pip install keyword-engineRequirements:
- Python 3.9+
pytrends(optional, for Google Trends data —pip install pytrends)
# Single keyword
python keyword_engine.py "free keyword research tool"
# Multiple keywords (comma-separated)
python keyword_engine.py "ahrefs alternative, semrush alternative, best seo tools"# Baseline snapshot
python keyword_engine.py "your keywords" > today.json
# Tomorrow: compare with today
python keyword_engine.py "your keywords" > tomorrow.json
python keyword_engine.py --daily-report tomorrow.json today.json| Field | What it tells you |
|---|---|
intent |
Tool / Learn / Buy intent breakdown from Google Autocomplete |
funnel_stage |
BOFU (decision) / MOFU (evaluation) / TOFU (learning) |
kd_score |
Keyword difficulty 0-100. Sweet spot: 20-35 |
geo_score |
LLM citation potential 0-100 + recommended formats (FAQ / comparison_table / direct_answer) |
page_type |
Recommended page: comparison / tool_page / faq / blog_post |
url_pattern |
Suggested URL: /compare/ / /tools/ / /faq/ / /blog/ |
volume_estimate |
Monthly search volume (US), estimated from Google Trends ratios |
| Pipeline Step | Data Source | Cost |
|---|---|---|
| Intent classification | Google Autocomplete API | Free |
| Funnel stage | Keyword pattern matching + Autocomplete intent | Free |
| KD estimation | Bing SERP structure analysis | Free |
| GEO scoring | Keyword structure + SERP signals | Free |
| Page recommendation | Combined signals | Free |
| Volume estimation | Google Trends (optional, pytrends) | Free |
| Wikipedia lower bound | Wikipedia Pageview API | Free |
- Solo developers & indie hackers — validate keyword ideas without paying $99/mo
- AI agents (Claude Code, Cursor, etc.) — batch SEO research as part of automated content pipelines
- Startups — quick competitor keyword analysis before building landing pages
- SEO learners — understand KD, funnel stages, and GEO without expensive tools
keyword-engine/
├── keyword_engine.py # Core engine (800 lines, 15 functions)
├── ocr.py # Utility: OCR via Doubao Vision API
├── content/
│ ├── compare/ # Competitor comparison pages
│ └── faq/ # GEO-optimized FAQ pages
└── seo-geo-plan-2months.md # 2-month growth plan
- Google Search Console integration for index tracking
- Web UI with live keyword demo
- Dev.to API auto-publishing integration
- Multi-language keyword support
- Historical daily report trend charts
MIT — free forever. Use it, fork it, ship it.