Read Keyword Research results without hiding their boundaries
Stored run evidence
Bounded read views
Several data clocks
Begin with the run header
The selected run header identifies candidate count, region, inputs, date, mode, and status. While work is active, cost is the reserved quote. After terminal completion, it is the settled charge. Failed and canceled runs show no customer cost because their reservations are released.
Pending can mean that dispatch was accepted but the worker has not claimed the run. Running includes the current stage and elapsed time. A lease-expiry warning or support code is operational evidence, not a reason to treat an incomplete candidate set as complete.
Completed does not always mean complete coverage
Result batches can be written before final settlement, so a live or interrupted run may already show candidates. Use them as provisional evidence until the run becomes terminal. When a completed run is partial, inspect its source failures and missing coverage before comparing its count with another run.
| State | What it establishes |
|---|---|
| Pending | The run exists and is waiting for dispatch or worker claim. |
| Running | A worker owns the current lease and has reported a processing stage. |
| Completed | Settlement finished. The run can still carry partial evidence. |
| Failed | No accepted terminal result set. The reservation was released. |
| Canceled | Work was stopped and the customer reservation was released. |
Know what one row preserves
The table can show keyword, source and origin seed, competitor domain and position where relevant, intent, SERP feature count, traffic estimate, trend, volume, CPC, generic difficulty, and optional own-domain-adjusted difficulty. The stored candidate is deduplicated by normalized keyword within the run. In seed-led research, the first accepted source can therefore remain on the row even when another path later found the same phrase.
The already-owned marker is a snapshot taken when the result was written or later imported, not a guaranteed live database lookup for every row. Import performs the authoritative deduplication. A blank metric means no value is available in the relevant source, not a measured zero.
Use match modes as lexical lenses
Competitor runs have no seeds. Exact therefore has no matches, while Related can include the full candidate set under the current rule. Match modes are free read-time derivations. They do not request new provider data or alter the saved run.
Visible filters combine with AND logic: include substring, exclude substring, minimum volume, maximum difficulty, exact intent, exact source, and Only new. Sorting supports keyword, volume, CPC, and difficulty, with a reset to the run's stored order.
| Mode | Current rule |
|---|---|
| All | No seed relationship filter. |
| Broad | Every token from at least one seed appears in any order, with conservative prefix tolerance for longer inflections and umlaut folding. |
| Phrase | A whole-token seed phrase appears in order. |
| Exact | The normalized candidate equals a normalized seed. |
| Related | No seed phrase is contained. This is not a semantic relevance guarantee. |
| Questions | The phrase matches a conservative question-word or question-mark rule in German, English, Spanish, or French. |
Unknown values behave differently at minimum and maximum bounds
A missing value fails a minimum threshold because the row cannot prove that it reaches the floor. It passes a maximum threshold because no measured value proves that it exceeds the ceiling. This distinction keeps unknown data visible under a ceiling but excludes it from claims such as minimum search demand.
Only new relies on the candidate's stored already-owned marker and is therefore an advisory view. A keyword can enter or leave the active database after the result was written. Import rechecks current state before it inserts, restores, skips, or adds a row to a list.
Filters run over a bounded paginated scan
Lexical filters are evaluated after a bounded index scan rather than through an unbounded full-run query. The current result page policy allows up to 200 matching rows per page, with scan headroom to find them. The interface can automatically request up to eight further pages while trying to fill the current view or establish exhaustion, then asks you to load more.
A sparse page does not necessarily mean only that many matches exist. Read the scanned count, match count, exhausted flag, and budget-reached indication. Run-wide matching selection and term analysis currently inspect at most the first 2,000 rows, while CSV scans up to 5,000 and exports at most 2,000.
Term groups reveal vocabulary, not page architecture
Term groups scan up to the first 2,000 rows, exclude seed tokens, one-character fragments, and pure numbers, count each term once per candidate, then rank by row count, summed search volume, and alphabetic order. The workbench displays the leading 30 groups and marks the view when its scan was truncated.
Selecting a group writes that word into the ordinary include-substring filter. It is not token-exact clustering, semantic grouping, or proof that the phrases share intent. Use it to notice recurring modifiers, then inspect the actual candidates and SERPs before designing pages.
Read the columns as separate claims
The volume bar is scaled against the largest value among the currently loaded visible rows, so it is a local visual comparison. Difficulty is displayed on a 0 to 100 scale. Neither treatment changes the stored value or turns it into a decision score.
| Column | Question it can help answer |
|---|---|
| Source and seed | Which acquisition path first supplied this candidate? |
| Volume, CPC, difficulty | What did the stored paid metrics report for this market and run? |
| Intent | Which provider classification is available, if any? |
| Competitor domain and position | Which retained domain observation made this row useful in a competitor run? |
| Current intelligence | Which newer workspace, SERP, trend, topic, or authority evidence was joined at read time? |
Separate stored metrics from current appended intelligence
The read model can join current Keyword Database enrichment and one cached SERP for the same workspace keyword. It may show active SERP feature count, up to three leading results, monthly trend, traffic potential, a page-bounded parent topic, and own-domain-adjusted difficulty. Each field has a narrower contract than its label might suggest.
Traffic potential is currently search volume multiplied by 0.3 and carries medium confidence. Trend compares the first and last available monthly-volume values when the first is positive. Parent topic groups rows on the loaded page when at least three Top 10 URLs overlap and reports shared URLs divided by ten as confidence. These are prioritization aids, not forecasts or global content clusters.
Own-domain-adjusted difficulty combines generic difficulty with an authority score derived from the first completed or partial Domain Overview snapshot among a bounded set of recent snapshots. It is medium-confidence context, not the provider's keyword difficulty and not a promise that the domain can rank.
Keep the run clock and current-data clock visible
The candidate's paid metrics belong to the research run. Appended enrichment can have a later fetched time. The cached SERP carries its own location, language, device, depth, and observation time, and the current lookup is not guaranteed to match the run's market context. Domain authority comes from another saved snapshot again.
A useful review records which fields came from the run and which were joined later. If SERP context or date does not match the research question, open a context-correct snapshot or collect new evidence before deciding on intent, competition, page ownership, or feasibility.
Selection is explicit and bounded
The row checkbox selects loaded candidates. Select all matches performs a separate run-wide scan but currently stops at 2,000 matching rows and reports truncation. Loading another page does not silently approve it. Review the selected count and filters immediately before importing.
A candidate's `importable` flag is a hint, not a hard gate. Crawl Foundry deliberately allows a person to import a no-data row. That can be reasonable for an important editorial phrase, but the missing metrics must remain visible and should not be replaced with invented values.
CSV exports a bounded operational subset
CSV applies the current filter and sort, scans up to 5,000 rows, and writes at most 2,000. It includes keyword, source, origin seed, volume, difficulty, CPC, competition, intent, competitor domain and position, already-owned state, and the importable hint. The export reports when the cap truncated the result and protects spreadsheet cells from formula injection.
The file does not include the appended SERP results, SERP feature details, calculated traffic potential, trend, page-bounded topic, or domain-adjusted difficulty. Preserve the run ID, market, date, filter, sort, and truncation note alongside the file if it will support an external decision.