Deck Docs
AgentsWorkflows

Competitor gaps

Find the gaps in competitor products that your own customers also ask about, with evidence from both sides.

This page is an agent-readable workflow for Deck. Humans can follow along. Coding agents should treat the steps as the source of truth.

Competitor gaps — agent workflow

  • Use it when: the user asks "where are competitors weak?", "what do competitors do better that our customers want?" or "which competitor complaints match our own feedback?"
  • Outcome: the user has a list of competitor gaps. Each gap has the competitor evidence, the matching evidence from the user's own customers (or "none found"), its backlog status and Deck links. Nothing changes in Deck unless the user approves new research.
  • Needs: Deck MCP, Competitors on for the workspace and a published competitor report. MCP cannot turn Competitors on. New research spends credits.

1. Probe Deck MCP

Call get_user_context. This must be a real tool call.

2. Check the competitor report

Call explore_competitors with no parameters.

  • feature_unavailable: Competitors is off. An organization admin turns it on in Settings → Competitors. Stop.
  • collection.status is running or importing: research is in progress. Tell the user. Deck emails the person who started it when it is ready. Stop.
  • collection.competitors is empty: offer research. When collection.suggested_competitors lists names, ask "Want me to research your competitors? Deck found A, B and C." Use at most the first 3 names, and only those names. Otherwise let the user name the competitors and their websites.
  • The user says yes: call start_competitor_research. This is a sensitive write. It spends credits and sends email. Get an explicit yes every time. Research runs in the background and can take more than 5 minutes. Stop this workflow until the report is ready.

The Free plan includes 1 competitor report for the first 2 competitors. See Competitors.

3. Read the landscape

Make these calls at the same time:

  • explore_competitors with view: "overview". Read the strengths and weaknesses rows.
  • explore_competitors with view: "subthemes" and group: "weaknesses". These are the complaints of competitor customers. Each one is a possible opening.
  • explore_competitors with view: "subthemes" and group: "strengths". These are the places where competitors lead. Each one can be a gap in the user's product.
  • explore_competitors with view: "teasers". These are Deck's opportunity teasers, scored by impact.

Page with cursor when a list has more rows. A theme that is both a strength and a weakness shows only under weaknesses. Add competitor_id to focus on one competitor.

4. Pick the candidates

Take up to 10 candidates: the top weaknesses, the top strengths and the teasers with the highest impact. Use Deck's order. For each candidate, write one short keyword phrase from its name, for example "bulk export" or "SSO setup".

5. Match against your own feedback

For each candidate, make these calls at the same time:

  • search_deck with the keyword and types set to insight, theme, subtheme and opportunity.
  • explore_insights with the keyword as query and limit: 10.

Read the quotes. Count a match only when the insight is about the same problem. A shared keyword is not enough. When a theme matches, call explore_themes with its theme_id to get Deck's insight count and sentiment.

An opportunity result shows that the gap is already on the backlog. Promoted teasers also link back to their opportunity.

6. Sort the gaps

Put each candidate in one group:

  • Customers also ask: Deck has matching evidence from the user's own customers.
  • Competitor only: no matching first-party evidence. The gap can still matter, but the user's customers do not ask for it yet.
  • Already on the backlog: an opportunity exists.

7. Write the report

Show a table with these columns: gap, side (weakness, strength or teaser), competitor, competitor evidence (Deck's count), your customers' evidence (Deck's count, or "none found"), backlog status and links. Put "Customers also ask" first.

Below the table, give two quotes for each top gap: one from a competitor review and one from the user's own customers.

8. Next steps (optional)

To put a gap on the backlog, fetch and follow https://docs.getdeck.io/docs/agents/workflows/competitor-finding-to-backlog.md. Pass the subtheme, teaser or competitor insight IDs from step 3.

Rules

  • Never suggest competitor names from your own knowledge. Use only the user's names or suggested_competitors.
  • start_competitor_research and add_competitor are sensitive writes. They spend credits and send email. Get an explicit yes every time.
  • Competitor insights are not first-party insights. Keep their counts apart. Their IDs do not work in explore_insights.
  • Competitor research is not scoped to segments. Do not compare it with one segment unless the user asks.
  • Quote Deck's numbers. Do not compute your own.
  • Show the plan and get a yes before you call write tools.
  • If the user has more than one Deck organization, call select_organization first and pass org_id on every call.

Done when

  • The user has the gap table, sorted into the three groups.
  • Each gap has Deck's competitor count and Deck's first-party count, or "none found".
  • Each gap has a Deck link, and no write ran without a yes.

See also: Competitors, Competitors settings and Opportunity Backlog.