Skip to content

HOW IT WORKS

Four gates between raw noise and your briefing.

Most competitive intelligence tools summarise. A model reads what changed and writes a sentence about it, and that sentence arrives in your inbox with the same confidence whether it is well founded or invented. The failure is quiet, which is the problem: a plausible wrong claim is worse than no claim, because someone repeats it in a deal.

Vaarta is built so that cannot happen. Every synthesised implication has to cite the specific verified signals it was drawn from. If the citations cannot be resolved to real signals, the claim is discarded before delivery. Not flagged, not shown with a warning. Discarded.

One week of raw collection, and what survives it

ILLUSTRATIVE SHAPE · ONE COMPETITOR

Raw collection is a fire hose. Alerts and mention trackers forward everything that names a company, unverified and unclassified. Every raw candidate goes through four stages, and a candidate that fails any of them does not become a signal. The counts below are illustrative of the shape, not a figure from your workspace.

1,412

RAW CANDIDATES

Collected across eight sources

Everything that names the company, verified or not.

624

SURVIVE GATE 01

Entity resolution

788 dropped — wrong company, or no confident attribution.

247

SURVIVE GATE 02

Relevance

377 dropped — a mention, not an event.

96

SURVIVE GATE 03

Classification

151 dropped — too vague to type, too minor for the catch-all.

9

IMPLICATIONS

Synthesis, each citing its signals

96 verified signals become 9 grounded implications.

The last row is not attrition — it is synthesis. Ninety-six verified signals become nine implications, and each of those nine has to cite the signals it rests on or it never gets stored.

The four gates, and what dies at each one

01

Entity resolution

Is this actually your competitor, or a company that shares a word with them? Generic-word names collide constantly, and a name match alone is not evidence. Signals that cannot be attributed to the right company with confidence are dropped here, before any language model sees them.

WHAT DIES HERE

Name collisions. Anything that cannot be tied to the resolved identity — domain, official name, known aliases — never advances.

“Linear Finance raises $40M” filed under Linear, the project tracker.

02

Relevance

Does it change anything? Most mentions of a company are not events. A candidate with no fetched content and no positive disambiguator does not proceed on the strength of a model’s opinion.

WHAT DIES HERE

Mentions. A listicle, a podcast namedrop, a job-board aggregation of a req you already have.

“12 tools we love this year” — your competitor is number seven.

03

Classification

Every surviving signal is assigned one of 16 event types. One of those is a catch-all, and it is deliberately the hardest to earn: a signal routed there ships only if it clears a materiality bar the specific types are not held to. Anything vague enough to need the catch-all, and unimportant enough to fail that bar, is dropped rather than filed.

WHAT DIES HERE

The vague middle. If it needs the catch-all and cannot clear the materiality bar, it is discarded, not filed for later.

“Company posts about company culture” routed to Other, materiality: none.

04

Summary

Three lines and an explicit reason it matters, written against the verified source rather than a headline. The source URL travels with the signal so you can always open the thing itself.

WHAT DIES HERE

Headline-only readings. If the summary cannot be written against fetched content, there is nothing to write it from.

A summary of a paywalled headline, with the body never fetched.

Then the citation rule

Verified signals are facts about what happened. The layer above them is analysis: what a set of signals implies, and what you might do about it. That layer is where a language model can be most useful and most dangerous, so it is the layer with the hardest rule.

Each implication must reference the signals it rests on. Those references are checked against the signals that actually exist for your workspace. An implication that cites nothing, or cites something that cannot be found, does not get stored and therefore never reaches a briefing, a digest or the API.

Where the signals come from in the first place — the eight public sources, and the lines we will not cross to collect them — is on the grounding page.

THIS HAS THROWN AWAY REAL WORK

34 implications, dropped wholesale

On one analysis run the model returned its citations in a format the validator did not accept. All 34 implications in that run failed the check and were dropped rather than published ungrounded. The run cost real tokens and produced nothing deliverable. That is the correct outcome, and it is the whole point: the system would rather say nothing than say something it cannot stand behind.

Worth being precise about what failed, because the distinction is the argument. Those claims were not fabrications. They were drawn from real signals, and the citations pointed at real evidence. They were dropped because the validator could not mechanically resolve the citation format, and a citation it cannot verify is a citation it cannot verify. We fixed the citation parser afterwards. We did not touch the rule that discarded the output.

What this looks like on the page

The rule is only visible if the product shows its work. Every implication is rendered with the verified signals it was drawn from, linked to their sources, so the walk from conclusion to evidence is one click rather than a support request.

SHIPS

Entry pricing moved from $29 to $49 in eight weeks, which is consistent with a deliberate move upmarket rather than a one-off test.

GROUNDED IN 2 SIGNALS

  • Entry tier raised from $29 to $49 per month · competitor.com
  • Starter plan removed from the pricing page · competitor.com

Both signals exist in your workspace and both carry the source URL they were verified against. Every figure in the claim, $29 and $49, appears in the verified record it was drawn from. Nothing in the sentence is unsupported, so the sentence ships.

DROPPED

Entry pricing moved from $29 to $49, and roughly 40% of their customers churned as a result.

The first half is the same well-founded claim, citing the same two signals. The second half contains a figure, 40%, that appears nowhere in your verified record for that competitor. The check is mechanical: every number in a claim has to already appear in the verified signals the analysis pass was given, and this one does not, so the whole claim fails and is discarded. It is not shown to you with a caveat. It is not stored at all.

Being exact about the boundary, because it is the point of this page: that check is deterministic and catches invented figures. It is not a truth oracle. A claim can carry no numbers at all and still be a thin reading of the evidence, which is why the analysis layer is also instructed never to predict, and why every claim ships with its sources attached for you to judge.

You can check it yourself

Grounding is only worth something if you can verify it rather than trust it. Every analysis served by the API carries the ids of the signals underneath it, and each of those ids resolves against the signals endpoint. You can walk from a conclusion back to the evidence without asking us.

The same record is reachable over the REST API and a hosted MCP server, so an AI assistant can trace the same path.

# an implication, with the signals it was drawn from
curl https://api.vaartahq.com/v1/analysis \
  -H "Authorization: Bearer vt_live_..."

# then resolve any id in basis_signal_ids
curl https://api.vaartahq.com/v1/signals \
  -H "Authorization: Bearer vt_live_..."

What this does not claim

It does not make the summaries perfect

A grounded claim can still be a weak reading of a real event. Grounding guarantees the evidence exists and is linked, not that the interpretation is the best one available.

It does not mean we catch everything

A gate tuned to drop unverifiable signals will sometimes drop a real one. We would rather miss an event than invent one, and that trade is deliberate.

It does not apply to sources we cannot reach

Some things are simply not public, and no amount of verification conjures them.

See what survives the gate for your competitors.

Track one competitor free, no card required.