River
Y CombinatorBacked by Y Combinator

Free template

Competitive Intelligence Report Template

Five Word documents and four CSV sheets that track your competitors, date every fact, and tie each conclusion to the facts it rests on.

Free download · No account needed

What you get

Pack of 9 files: 5 documents, 4 spreadsheets

Competitive Intelligence Report Template
  • How Staleness Is ComputedDocument
  • Intelligence ReportDocument
  • Player ProfilesDocument
  • Category MapDocument
  • Watch ListDocument
  • Comparison MatrixSpreadsheet
  • Signal RegisterSpreadsheet
  • Recheck AuditSpreadsheet
  • Inference RegisterSpreadsheet

How to write a competitive intelligence report

A competitive intelligence report records what you know about your main competitors and what you conclude from it, to support a decision such as pricing or positioning. A good one gives every fact its source and the date someone checked it. It keeps conclusions apart from facts, names the facts each conclusion rests on, and is rechecked on a schedule rather than rewritten.

Most reports are accurate the week they're written. They go wrong later, and quietly, because nothing in them records when anyone last looked.

Three colleagues at a meeting table with open notebooks, one pointing at a page with a pen
Before a conclusion leaves the room, check which facts it rests on. Photo: sarah b on Unsplash

Name the decision and the players

Write down the decision the report serves before you collect anything: a price change, a positioning question, a kind of deal you keep losing, or a question from the board. The decision picks the fields. A pricing question needs list prices, packaging and named customers. A board question about the market needs ownership, revenue and leadership.

Then pick the players: usually four to six, the ones that actually appear in your deals rather than everyone in the category. Each player adds facts to recheck, and a recheck list nobody works through is how these reports go stale.

Record every fact with its source and date

Build a comparison matrix with one cell for each field and player. A US government tradecraft primer for intelligence analysts suggests keeping information stored by source type and date1, with notes on each source's strengths and weaknesses. In your matrix, each cell holds four things:

  • The claim: "$39 per user a month, with self-serve checkout"
  • Where you read it: "their pricing page"
  • The source type: primary if the company published it, secondary if a reviewer, reporter or analyst did
  • The date you read it, which may not be the date it was published

A March press release read in November is a November observation of a March event, so note both dates. If you can't source a fact, leave the cell empty and note how you'd close the gap, such as a filing lookup or debriefs from deals you won. A marked gap is safer than a plausible guess, since nobody can later tell which numbers were guessed.

Keep confidential material out

Leave out anything someone wasn't free to share: a rival's proposal forwarded by a customer, a job candidate's account of their employer's plans, a screenshot from behind a login. US federal trade secret law lists breach or inducement of a breach of a duty to maintain secrecy2 among the improper means of acquiring a trade secret. If such material reaches you anyway, ask a lawyer before anyone uses it.

Give each kind of fact a shelf life

Facts decay at different speeds. A price can change overnight; a founding year never will. Give each field a recheck interval, and set each fact's recheck date as the date you read it plus that interval. Staleness then becomes arithmetic, not a feeling.

Starting recheck intervals, by field

FieldRecheck everyWhy
Open roles30 daysHiring signals are only useful while fresh
List price and packaging90 daysPrices change without an announcement
Positioning and review themes90 daysHomepages get rewritten; review themes drift
Named customers180 daysAdditions are announced; removals are silent
Integrations, leadership, funding180 daysSlower, and usually announced
Revenue365 daysFollows the filing calendar for public companies
Founded, headquartersNeverDoesn't change, so it stays out of rechecks

These are the template's defaults. Adjust them to your market.

For a rival that's a US public company, SEC deadlines tell you when to look. Its annual report on Form 10-K is due 60 to 90 days after its fiscal year ends3, depending on its size, so recheck revenue just after that. Major events, including a new CEO or CFO, go on a Form 8-K, generally within four business days4.

Keep conclusions apart from the facts

A fact is what a named source said on a date. A conclusion is what you inferred from facts, such as "we beat them on price below 40 seats." Keep conclusions in their own list. Beside each one, write the facts it rests on, when you last tested it, and everywhere it has been used.

The US intelligence community's analytic standards (ICD 203) say products should clearly distinguish underlying information from assumptions and judgments5. Hold to that line, because beliefs are sticky. Richards Heuer, a CIA veteran, wrote that impressions tend to persist even after the evidence that created them is fully discredited6. A conclusion that doesn't name its evidence outlives it.

ExampleAn entry in the conclusions listAn illustrative example written for this guide. The companies and prices are made up.

Conclusion: We beat Calderon on price in any deal under 40 seats.

Rests on: Calderon's list price, $49 a seat per month (their pricing page, read December 20, 2024).

Used in: the October battlecard and 14 deal notes.

Retested February 14, 2026: Calderon now charges a platform fee from $60,000 a year, plus a fee per shipment.

Status: Withdrawn. There is no seat count left to compare.

  • Named evidence. It names the price it rests on, so the price change flagged it at once.
  • How it slipped. The price was due for a recheck in March 2025 and nobody looked again until February 2026.

Recheck on schedule and withdraw what breaks

The same primer warns that without periodic checks, analytic judgments can become anchored to weak information1, and caveats attached to them can be forgotten. So work the recheck list on a schedule:

  1. List what has expired

    Sort facts past their recheck date by days overdue. Start with any that hold up a conclusion already in use.

  2. Go back to the source

    Read the same page or filing again. If nothing changed, reset the date and note that it held.

  3. Keep the old value

    If it changed, keep the old value beside the new one. A switch from per-seat pricing to a platform fee says more than either price.

  4. Retest what rests on it

    Pull up every conclusion that names a changed fact. Each one still stands, narrows or breaks.

  5. Withdraw it everywhere

    Correct a broken conclusion everywhere it was used, or the battlecard keeps repeating it.

Between rechecks, log anything new in a signal list before it touches the matrix, then promote it, park it with a note on what would confirm it, or discard it. A partner quoting a rival's price is a parked signal, not a price.

Watch for facts that move together, too. A new headline aimed at bigger buyers, a burst of enterprise sales hiring and a new head of sales all point upmarket, though no single fact says so.

Lead the report with what changed

Open each edition with what changed since the last one. ICD 203 says products should state how their major judgments are consistent with earlier analysis or a change from it5. Put withdrawn conclusions first, with every place each one was used. A retraction in an appendix rarely reaches the people repeating the claim.

Next come new conclusions and the state of the evidence, in counts with denominators: "19 of 48 facts were past their recheck date," not "some data is old." Then add a short profile of each player and the open gaps. If you include a competitive positioning map, compute its axes from facts in the matrix, so you can redraw it when they change.

Close with a watch list: the few changes worth catching before the next recheck. Give each one a threshold that can fire, such as "any per-shipment price on their pricing page," and name the conclusion it would move.

Before you circulate it

  • Every fact shows its source, type and date read
  • Nothing past its recheck date is quoted as current
  • Every conclusion names the facts it rests on
  • Withdrawn conclusions come first, with where each was used
  • Each gap says how it could be closed
  • Nothing came from material someone wasn't free to share

For a deeper look at one rival, run a competitor analysis from public sources. To help sellers facing one player, turn its column into a sales battlecard. The template on this page sets up the matrix, registers and report, and River can sort your existing material into them.

How to use this template

Use the files as they are, or open them in River with Edit with AI. Send River the competitors you track, the decision the report is for, and any old deck or battlecard, however messy. It turns that material into a dated matrix and a list of conclusions, then shows which claims are already past due.

  1. Download it or open it in River

    Download the five Word documents and four CSV sheets, each filled in with a worked example, or open them in River.

  2. Build the matrix

    Enter each claim with its source and the date you read it, or let River sort your old material into the matrix.

  3. Log conclusions separately

    Write each conclusion in the Inference Register with the cells it rests on and where it has been used.

  4. Recheck and rebuild the report

    When cells pass their recheck date, check them at source, retest the conclusions resting on them, then rebuild the report.

What's in the template

One rebuild, 19 expired cells, three withdrawn conclusionsThe four sheets that make a competitive report auditable instead of circulated.
Competitive Intelligence Report Template
RiverComparison Matrix

Comparison Matrix

Illustrative, for four fictional freight software companies. Ten of 48 cells shown. Every cell carries the claim, the source it came from and the date somebody read it.

CellFieldPlayerClaimObservedState
C01List priceCalderonPlatform fee from 60000 dollars a year plus usage per shipment2026-02-14Changed
C03List priceTessaly39 dollars per user per month, published, self-serve checkout2026-02-11Current
C02List priceNorlanderNo value. Not published anywhereneverGap
C13Review-site themeCalderonImplementation length is the dominant complaint, named in r...2026-02-12Held
C17Open rolesCalderon64 open roles. 8 in enterprise sales, 21 in engineering, 4...2026-02-14Current
C19Open rolesTessaly23 open roles. 9 in enterprise sales and solution engineering2026-02-11Changed
C22Named customersNorlander11 named on their customers page, 4 of them grocery2026-02-14Changed
C38Ownership and fundingNorlanderMajority recapitalisation by their existing growth investor2026-02-14Changed
C41Revenue or scaleCalderon612.4 million dollars FY2025 revenue, up 8 per cent2026-02-14Changed
C45Founded, headquartersCalderonFounded 2009, headquartered Chicago2026-02-14Current

The full matrix is 48 cells across 12 fields and four players: 34 sourced to the player's own published material, 9 to review sites and trade press, and 5 recorded as gaps with a named route to closing each. C02 is the gap that matters, because without a sourced price for Norlander there is nothing to price against.

RiverRecheck Audit

Recheck Audit

Generated, not maintained. Recheck-by is the observation date plus that field's interval, so the queue is arithmetic rather than a judgement about what still feels current.

CellFieldWas dueDays overOutcomeConsequence
C01List price2025-03-20331ChangedBroke INF-01, which was already in circul...
C19Open roles2025-08-17178ChangedBroke INF-03, which was already in circul...
C38Ownership and funding2025-08-06192ChangedBroke INF-04, which was already in circul...
C22Named customers2025-08-06192ChangedINF-05 re-tested against the new value an...
C11Positioning claim2025-10-16118ChangedFed the new conclusion INF-06
C28Integration coverage2025-11-1786ChangedNothing was resting on it
C41Revenue or scale2026-02-077ChangedNothing was resting on it
C09Positioning claim2025-09-28139UnchangedNothing was resting on it
C18Open roles2026-02-113UnchangedHeld, but INF-04 fell anyway on another cell
C06Packaging model2026-01-2817UnchangedReconfirmed INF-05 at no cost

Nineteen of 48 cells were past their recheck date, 1,961 cumulative overdue days, median 86 and worst 331. Eleven were rechecked and had not moved, which is worth logging because a value that has held through three rechecks is stronger than one observed once. Eight had changed. Three of those eight were holding up conclusions somebody had already acted on.

RiverInference Register

Inference Register

Conclusions live apart from observations and name the cells they rest on. That reference is the whole point: it is what makes a judgement re-testable when a cell underneath it moves.

IdConclusionRests onCirculatedState
INF-01We beat Calderon on price in any deal under 40 seatsC01 C03Battlecard, OctoberBroken
INF-02Implementation length is our strongest wedge against Ca...C13 C17 C29Battlecard, OctoberStanding
INF-03Tessaly does not turn up in our enterprise dealsC19 C07 C31Board deck, Q4Broken
INF-04Norlander cannot fund a national grocery pushC38 C18Pricing discussion, JanuaryBroken
INF-05Norlander is a grocery and cold chain specialist rather...C10 C06 C22noHeld, narrower
INF-06Tessaly is moving upmarketC11 C19 C35 C39noNew this cycle
INF-07Brightpath does not compete in multi-site accountsC24 C12 C36noStanding but thin
INF-08Calderon is building a services-led motionC17 C33noStanding
INF-09We do not know what Norlander charges and cannot price...C02 C42noGap-bound

Four of the nine had been circulated, and three of those four broke in a single rebuild. INF-01 was in the battlecard and in 14 opportunity notes. INF-03 was the stated reason for not staffing a competitive response. INF-04 was cited three weeks before, when list price was held on two renewals. INF-06 is the one the audit built rather than broke, off four cells that moved together.

RiverSignal Register

Signal Register

The inbox. Anything observed that is not yet a matrix cell lands here and gets a disposition, so the decision is made once in writing instead of being re-argued by whoever notices the thing next.

IdPlayerWhat was seenSourceDisposition
S02CalderonPer-seat tiers gone from the pricing page, replaced by one plat...PrimaryPromoted
S03TessalyCareers page went from 4 open roles to 23. Nine are enterprise...PrimaryPromoted
S04NorlanderNewsroom post announcing a majority recapitalisation by their e...PrimaryPromoted
S07NorlanderCustomers page now names 11, down from 14. Two of the four remo...PrimaryPromoted
S08CalderonA partner's webinar slide named a managed onboarding package an...SecondaryParked
S09NorlanderA job posting describes a cold chain compliance module that is...PrimaryParked
S11BrightpathA tender award notice lists them on a three-site contractPrimaryParked
S13NorlanderA candidate interviewing with us described their internal roadmapunsourceableDiscard: not public
S14TessalyA customer forwarded a proposal PDF carrying their discount sch...unsourceableDiscard: not public
S16NorlanderOn-premise deployment named again in a recent reviewSecondaryDiscard: duplicate

Sixteen signals: 7 promoted into 8 cells, 5 parked with the condition that would promote them written down, 3 discarded as not published and 1 as a duplicate. Every changed cell traces to a promoted signal, which is how you know nobody edited the matrix directly. S11 is the one to chase: a tender award notice that would settle the thinnest conclusion in the register.

  • How Staleness Is ComputedThe recheck interval for each field, from 30 days for hiring to never, and what each cell state means.
  • Intelligence ReportThe standing report, rebuilt each cycle, led by withdrawn conclusions and where each one was used.
  • Player ProfilesOne profile per competitor, built from its matrix column, with sources, dates and expired claims marked.
  • Category MapA two-axis map where each player's position is computed from cells in the matrix.
  • Watch ListChanges worth catching between rechecks, each with a threshold that can fire and the conclusion it would move.
  • Comparison Matrix sheetEvery fact as a cell: the claim, its source, primary or secondary, date read and recheck date.
  • Signal Register sheetAnything new you spot about a player, promoted to a cell, parked or discarded, with the reason.
  • Recheck Audit sheetEvery cell past its recheck date, how many days overdue, what changed and what it broke.
  • Inference Register sheetEach conclusion with the cells it rests on, where it was used and whether it still stands.

Common questions

What should a competitive intelligence report include?

A competitive intelligence report should compare your main competitors field by field, give the source and date for every fact, and tie each conclusion to its facts. Good ones lead with what changed since the last edition, then add a short profile per competitor, the open gaps and a watch list.

How often should you update a competitive intelligence report?

Update the report on a rolling schedule: recheck each fact when its shelf life runs out, instead of rewriting the whole report at once. This template's defaults are 30 days for job openings, 90 for prices and positioning, and a year for revenue. Rebuild the written report after each round of rechecks, leading with any conclusion that changed.

What sources can a competitive intelligence report use?

Stick to published sources: a competitor's own pricing and product pages, job postings, press releases, documentation and customer lists, plus filings, court and patent records, and public reviews. Label each source primary if the company published it and secondary if someone else did. Leave out anything someone wasn't free to share, such as a rival's proposal a customer forwarded.

How many competitors should the report cover?

Four to six is a practical number for most reports: the rivals you meet most often in deals. You can track more, but every extra player adds facts that need rechecking on schedule. If you name more than about eight in River, it asks which ones actually show up in your deals.

How is a competitive intelligence report different from a battlecard?

A competitive intelligence report is the evidence base on every competitor you track, while a battlecard turns one of them into quick answers for a live deal. Build the card from the report, and when the report withdraws a conclusion, correct the card too. For the card itself, use the competitive battlecard template.

Is this competitive intelligence report template free?

Yes. Download the five Word documents and four CSV sheets with no signup. They come filled with a worked example about four made-up freight software companies, so you can see how each part works before clearing it. Edit with AI opens the same template in a free River workspace.

What does Edit with AI do?

It opens the template in a free River workspace and asks for three things: who you track, the decision the report serves, and what you already have. River marks unsourced claims as gaps, sets recheck dates, flags what's past due and asks where your conclusions have been used. It won't file anything you weren't free to send.

Sources

  1. Central Intelligence Agency. “A Tradecraft Primer: Structured Analytic Techniques for Improving Intelligence Analysis.” cia.gov (opens in a new tab)

  2. Cornell Law School. “18 U.S. Code § 1839 — Definitions.” law.cornell.edu (opens in a new tab)

  3. U.S. Securities and Exchange Commission. “Form 10-K.” sec.gov (opens in a new tab)

  4. U.S. Securities and Exchange Commission. “Form 8-K.” sec.gov (opens in a new tab)

  5. Office of the Director of National Intelligence. “Intelligence Community Directive 203: Analytic Standards.” archive.dni.gov (opens in a new tab)

  6. Central Intelligence Agency. “Psychology of Intelligence Analysis.” cia.gov (opens in a new tab)

Written by

Chandler Supple

Co-founder & CEO, River

Chandler has spent the last six years working in AI, building tools for millions of users and Fortune 100 companies. In 2025, he co-founded River to build a new kind of operating system for AI agents.

Reviewed by

Brian Joseff, Co-founder, River