Verifiedv1.0.1

Organic Opportunity Map

A cited, prioritised opportunity map with target evidence, competitor evidence, demand and difficulty signals, recommended next actions and explicit uncertainty labels.

Compare a domain with its search competitors, validate a bounded set of candidate topics and turn the evidence into a prioritised organic growth plan.

Outcome boundary

What this Skill does—and does not do

The Skill does not promise rankings, treat sampled keyword absence as proof of a gap, publish content, change a website or expand beyond the approved market and sample sizes.

Inputs

  • One public target domain
  • One country and language
  • Business objective, audience and any excluded topics

Outputs

  • Target and competitor evidence snapshot
  • Prioritised organic opportunity table with confidence labels
  • Recommended validation, content and technical next actions

Complete workflow

Instructions your agent receives

Turn public search evidence into a practical organic growth plan. Compare one target domain with real search competitors, validate a small set of candidate topics, and distinguish provider facts from agent inference.

Read the bundled authoring contract first. Use one authorized Scrollport connection and its apps, discover, inspect, run and wallet control tools. Never call a supplier directly.

Outcome boundary

Produce a prioritised table of organic opportunities with:

  • the target and market examined;
  • the competitor or target observation behind each candidate;
  • current volume, difficulty, intent and useful SERP features when returned;
  • a confidence label and the evidence needed to raise it;
  • one recommended next action per candidate.

This is an evidence-backed opportunity map, not a ranking forecast or a complete site audit. A bounded ranked-keyword response is a sample. Absence from that sample does not prove the target has no ranking, and the Skill must never describe a sampled absence as a confirmed content gap.

Inputs and trial-safe defaults

Require:

  • one public target domain;
  • one country and language;
  • the business objective and intended audience;
  • excluded products, topics, competitors or brand terms.

Default to one target sample of at most 20 rows, one competitor-discovery call, at most two selected competitors with at most 40 ranked-keyword rows each, and one keyword-overview batch of at most ten unique topics. Stop if the current inspected plan exceeds $0.100000.

Use the supplied market consistently. Do not mix countries or languages in one table. Remove navigational brand queries unless the objective explicitly needs them.

Select and inspect the route

Discover by intent and inspect every selected tool immediately before use. The currently verified route is:

  • dataforseo.ranked-keywords for bounded target and competitor samples;
  • dataforseo.organic-competitors for overlapping search competitors;
  • dataforseo.keyword-overview for shortlisted-topic validation.

The named ids are the validated route, not permanent entitlement. If any required tool is not live, its schema no longer supports the bounded plan, or its price cannot be mapped to an exact maximum, stop without substituting a scraper or another data source.

Save the inspected price unit, current schema, exact input and maximum cost for each planned call. Deduplicate the overview batch before pricing it.

Plan and staged approvals

Before the first paid run, show:

  • target, country, language and business objective;
  • target sample size;
  • exact target-baseline and competitor-discovery inputs;
  • the rule for selecting at most two competitors;
  • the reserved maximum for competitor samples and one overview batch;
  • inspected phase-one prices and the maximum total, which must remain at or below $0.100000.

Wait for explicit approval of the exact phase-one calls and reserved workflow maximum. That approval does not cover competitor domains or topics that do not exist yet. Changing a domain, market, sample size, selection rule or total ceiling invalidates it.

Save state after planning and every terminal run:

{
  "skill": "scrollport-organic-opportunity-map",
  "version": 1,
  "status": "planned",
  "target": {"domain": "example.com", "country": "United Kingdom", "language": "English"},
  "objective": "...",
  "plan": [],
  "completed": [],
  "competitors": [],
  "candidates": [],
  "pending": "phase-one approval",
  "spent_usd": "0.000000",
  "updated_at": "ISO-8601"
}

Do not store credentials, approval URLs or raw access artifacts in the state.

Execute the evidence pass

1. Establish the target baseline

Run the approved dataforseo.ranked-keywords target sample. Save the run id, final cost and the returned keyword, position, URL and search signals that are actually present. Summarise visible themes and pages without inferring coverage beyond the sample.

An empty result is a valid finding. Do not repeat the call automatically or quietly enlarge the sample.

2. Find and select search competitors

Run dataforseo.organic-competitors once. Distinguish genuine business or content competitors from generic platforms, directories and very large sites whose overlap is not decision-useful.

Select at most two competitors using returned overlap evidence plus clear relevance to the target's audience. Record rejected domains and the reason for rejection. Do not spend on every returned domain.

Now inspect and present the exact ranked-keyword input for each selected domain, the current per-call maximum, spend so far, remaining reserved budget and new workflow maximum. Wait for a second explicit approval before either competitor sample. A domain chosen after discovery is never covered by phase-one approval. Save the approved domains and inputs in state.

3. Sample competitor visibility

Run the approved dataforseo.ranked-keywords sample once for each selected competitor. Build candidate topics locally from terms that are relevant to the target's objective and supported by a useful ranking, page or SERP observation.

Compare candidates with the target sample, but label a term uncovered in the sample, not the target does not rank, unless a separate exact provider check proves that claim.

4. Validate the shortlist

Remove duplicates, brand-only terms and topics outside the business boundary. Choose at most ten candidates, inspect the exact deduplicated dataforseo.keyword-overview input, and present the topic list, current price, spend so far, remaining reserved budget and final workflow maximum. Wait for a third explicit approval before the overview run. Preserve returned volume, difficulty, intent, competition and SERP features as provider facts. Mark absent fields as unavailable rather than estimating them.

5. Prioritise transparently

Score locally; do not invent a provider score. Use a simple, visible rubric:

  • business fit: high, medium or low;
  • evidence strength: exact observation, sampled observation or hypothesis;
  • demand and difficulty: the current provider values;
  • intent fit: aligned, adjacent or unclear;
  • next action cost: small validation, content brief, technical fix or deeper research.

Prioritise high-fit, supported opportunities that have a realistic next action. Large volume alone is not a reason to rank a topic first.

Deliverable

Return:

  1. a short scope and limitations note;
  2. a target baseline and selected-competitor summary;
  3. a table with topic, evidence source, volume, difficulty, intent, SERP features, business fit, confidence and next action;
  4. the top three actions for the next four weeks;
  5. exact tool ids, run ids, final costs and total spend;
  6. rejected or deferred candidates and the reason.

Every conclusion must identify whether it came from DataForSEO or local agent analysis. Cite the saved provider observation behind each top priority.

Recovery and acceptance

On resume, poll every saved non-terminal run id before creating another run. Reuse each successful result. If a server estimate requests confirmation, hand the approval URL to the human and wait. If a required tool fails after uncertain provider execution, poll the same run; do not pay for a replacement merely because the wait loop ended.

The Skill is complete only when the final map:

  • stays inside the approved domain, market, samples and cost;
  • contains at least one decision-useful priority or honestly reports none;
  • separates provider facts, sampled absence and inference;
  • gives an actionable validation or creation step for every priority;
  • records exact run ids and final spend.

A successful response envelope without a semantically useful map does not pass.

Control

Cost and approval boundaries

Inspected per-call and per-result prices for target sampling, competitor discovery, competitor sampling and keyword validation.

Trial-safe mode uses one target, at most two selected competitors and at most ten validated topics; the exact inspected plan must remain at or below the stated maximum.

  • Approve the exact target-baseline and competitor-discovery inputs plus the reserved workflow maximum before the first metered run
  • Approve the exact selected competitor domains, sample inputs and remaining maximum after discovery and before competitor sampling
  • Approve the exact deduplicated topic batch and remaining maximum after shortlist construction and before keyword validation
  • Approve any additional competitor, market, keyword batch or repeated provider call

Learn the method