Tom's Keyword Miner — Documentation

Version 1.0.0 · Free keyword discovery tool for Windows

Contents

Overview

Tom's Keyword Miner discovers long-tail keywords by mining autocomplete suggestions from Google, DuckDuckGo, and YouTube. Enter a seed topic, and TKM combines it with 19 question-based patterns and every letter a–z, then queries autocomplete APIs to surface keyword ideas that paid SEO tools typically miss.

TKM is a single portable exe with no installer, no account, no cloud sync, and no dependencies. All data is stored locally in a SQLite database next to the exe.

Getting Started

  1. Download and unzip TomsKeywordMiner.zip to any folder
  2. Run TomsKeywordMiner.exe — no installation or admin rights needed
  3. On first run, a data folder is created next to the exe containing tkm.db
  4. Click + Add Seed and enter a topic (e.g. "crm software")
  5. Review the pattern checkboxes — all 19 are enabled by default
  6. Click Start Mining and wait for the scan to complete
  7. Browse, filter, and export your discovered keywords
SmartScreen: Windows may show a warning on first run because the exe isn't code-signed. Click "More info" then "Run anyway". This is standard for all new unsigned software.

Seeds

A seed is a topic that TKM uses as the base for autocomplete queries. Examples: "crm software", "background remover", "meal prep for beginners".

Managing Seeds

Each seed in the left panel shows the topic name and a count badge with the number of discovered keywords.

Patterns

Patterns are question-based stems that TKM combines with your seed topic and every letter a–z to generate autocomplete queries. There are 19 built-in patterns across 4 categories:

Category Patterns Query Template
Interrogative what, which, when, where, who, why, how {stem} {seed} {letter}
Modal can, could, should, will, would {stem} {seed} {letter}
Auxiliary is, are, does, do {stem} {seed} {letter}
Comparative best, top, vs best {seed} for {letter}
top {seed} for {letter}
{seed} vs {letter}

With all 19 patterns enabled, each seed generates 19 × 26 = 494 queries per autocomplete source.

Configuring Patterns

When you select a seed that has no keywords yet, the pattern setup view appears. From here you can:

Pattern states are saved to the database when you click Start Mining.

Mining

Mining is the process of sending your seed + pattern + letter combinations to autocomplete APIs and collecting the suggestions.

Starting a Mining Session

Click Start Mining on the pattern setup screen, or use Mining → Start Mining from the menu bar. TKM will:

  1. Save your current pattern checkbox states
  2. Build the query matrix (enabled patterns × 26 letters)
  3. Open a WinHTTP session and begin querying
  4. Store each unique keyword in the database as it's found
  5. Commit to the database every 50 queries

During Mining

While mining is active:

Cancelling

Click the Cancel Mining button or press Escape. Mining stops at the next checkpoint and all keywords found up to that point are kept.

Completion Summary

After a successful mining run, a summary dialog appears showing the total queries completed, number of new keywords discovered, and the top-performing pattern (the pattern that produced the most keywords).

Sources

TKM queries up to three autocomplete sources per query:

Source Default Default Delay Notes
Google Always on 1000 ms Cannot be disabled. Primary source.
DuckDuckGo On 500 ms Enable/disable in Settings. Free, no API key.
YouTube Off 1000 ms Enable/disable in Settings. Free, no API key.

Different sources often return different suggestions for the same query. Running multiple sources increases your total keyword count.

The query count label on the pattern setup screen shows the exact query count and which sources are active, for example: "494 queries × 2 sources (Google, DuckDuckGo)".

Results Table

After mining completes (or if you select a seed that already has keywords), the results table appears. Each row shows:

Column Description
Checkbox for selecting rows
Keyword The discovered keyword text
Source Which API found it (Google, DuckDuckGo, or YouTube)
Pattern Which stem triggered the discovery (e.g. "how", "best", "vs")
Discovered Date and time the keyword was found

A summary bar above the table shows the total keyword count, number of sources, and relative time since the last mining session (e.g. "221 keywords from 3 sources · Last mined 2 hours ago").

Rows alternate between white and light grey for readability. Column widths are remembered between sessions.

Filtering & Sorting

Text Search

Type in the Search box above the table. Results filter in real time as you type, matching against the keyword text.

Source Filter

Use the All Sources dropdown to show only keywords from Google, DuckDuckGo, or YouTube.

Pattern Filter

Use the All Patterns dropdown to show only keywords discovered by a specific stem (e.g. only "how" keywords).

Sorting

Click any column header to sort by that column. Click again to reverse the sort direction. The default sort is by Keyword (A–Z).

All three filters can be combined. The status bar shows the filtered count (e.g. "Showing 42 of 221").

Selecting Rows

Selected rows are used for Copy, Export Selected, and Delete Selected operations.

Exporting Keywords

Clipboard

Select keywords and press Ctrl+C or click Copy Selected. Keywords are copied one per line.

Text File (.txt)

Use File → Export All (.txt) or File → Export Selected (.txt). The file contains one keyword per line with a header line:

# Discovered by Tom's Keyword Miner — tomdahne.com
best crm software for small business
how to choose crm software
what is crm software used for

CSV File (.csv)

Use File → Export All (.csv) or File → Export Selected (.csv). The CSV includes four columns with a UTF-8 BOM for Excel compatibility:

Keyword,Source,Pattern,Discovered
best crm software for small business,Google,best,2026-03-28 20:21
how to choose crm software,DuckDuckGo,how,2026-03-28 20:22

Context Menu

Right-click any row in the results table to access:

Action Description
Copy Keyword Copy the single right-clicked keyword to the clipboard
Open in Google Open a Google search for the right-clicked keyword in your default browser
Copy Selected Copy all selected keywords to the clipboard (one per line)
Export Selected (.txt) Save selected keywords to a .txt file
Export Selected (.csv) Save selected keywords to a .csv file with metadata columns
Delete Selected Delete selected keywords from the database (with confirmation)

You can also double-click any row to open that keyword in a Google search.

Bulk actions (Copy Selected, Export, Delete) are grayed out when no rows are selected.

Settings

Open via File → Settings.

Sources

Delays

Lower delays are faster but increase the chance of soft rate limiting (empty results). If you see many empty results, increase the delay.

Settings are stored in the database and persist across sessions.

Keyboard Shortcuts

Shortcut Action
Ctrl+A Select All / Deselect All (toggle)
Ctrl+C Copy selected keywords to clipboard
Ctrl+E Export selected keywords (.txt)
Ctrl+Shift+E Export all keywords (.txt)
Delete Delete selected keywords
Escape Cancel active mining session

File

Edit

Mining

Help

During mining, all menus except Mining → Cancel and Help are grayed out.

Data Storage

All data is stored in a single file:

TomsKeywordMiner.exe
data/
  tkm.db

tkm.db is a standard SQLite database containing your seeds, pattern states, mining sessions, discovered keywords, and settings (including window position, column widths, and source delays).

No data is sent to any server. The only network traffic is the autocomplete queries to Google, DuckDuckGo, and YouTube during mining.

Using with Tom's Site Auditor

Tom's Keyword Miner is designed to feed keywords into Tom's Site Auditor. The workflow:

  1. Mine keywords in TKM for your target topic
  2. Export to .txt or copy to clipboard
  3. In Site Auditor, open the Add Keywords dialog and paste
  4. Enrich with search volume, CPC, and trend data via Keywords Everywhere
  5. Track your rankings over time

TKM handles keyword discovery. Site Auditor handles analysis and tracking. They work as a pair, but TKM also works standalone with any tool that accepts keyword lists.

Troubleshooting

Windows SmartScreen blocks the exe

Click "More info" then "Run anyway". This happens because the exe is not code-signed. You can also submit it to Microsoft as a false positive.

Mining returns few or no results

This usually means rate limiting. Increase the delay in File → Settings. Google's default of 1000ms is conservative, but running many seeds back-to-back can trigger temporary soft limits that return empty suggestion lists.

Old database from testing

If you had a previous data\tkm.db from an earlier build, delete it and let TKM create a fresh one on next launch.

"Access Denied" or similar Windows errors

TKM does not require admin rights. Make sure you're running it from a folder where your user account has write access (not directly from the zip — extract it first).

Keywords not appearing after mining

Click the seed in the left panel to reload its results. If the seed shows a count badge but the results table is empty, check your filters — the source or pattern dropdown may be filtering everything out.

← Back to Tom's Keyword Miner