How Outset PR uncovered the 60% of publications it used to miss
A PR agency's job doesn't end when a story goes live. It ends when they can prove how far that story traveled. For Outset PR that meant tracking every pickup, rewrite, and repost across the web by hand, one article at a time, and manual search surfaced only about 40% of them. We built Tailsearch, a parser that follows a story's digital trace across six search engines, verifies each match with AI, and screenshots the proof.
Where the old process broke
Outset PR is an international PR agency in crypto and tech, running 200 to 400 placements a month for 25 to 40 active clients. The agency works on a simple principle: every campaign is backed by data, and every result is verified. That runs into a hard limit online, because one publication rarely stays in one outlet. A story from a major title spreads to aggregators, regional sites, and related-news blocks, sometimes under a changed headline, sometimes only for a while. Each of those mentions is part of the campaign's real reach, and Outset PR tracked that spread by hand, one article at a time. A single article took about an hour of an analyst's time, and a full report took up to three. Standard monitoring tools leave the gap open. Brand24 and Meltwater search brand mentions inside a closed list of sites. They miss a specific article's trace, they miss temporary placements that appear and vanish, and they miss partial-title matches. No tool on the market follows one article's digital footprint across the open web.
Tailsearch, a republication tracker for PR campaigns
The engagement opened with a joint R&D phase. Outset PR wanted an honest read on whether full automation was realistic before committing to a build. It wasn't: some platforms stay unindexed, and chasing full coverage would have cost far more than it returned. moat8 recorded that finding plainly, and that clarity pointed to a sharper solution. Tailsearch automates the primary data collection that eats hours, and the analyst keeps final judgment on every result.
Campaign-based batch processing
The analyst groups articles into a campaign with a name and a category, and can preload a list of articles as a table for batch processing.

Automated article extraction
The analyst pastes a direct link and sets the publication date. Tailsearch reads the article and extracts its title, a short description, and the date.

Queued multi-engine processing
Every submitted article enters a job queue that guarantees execution, retries failures, and respects each search engine's rate limits. The campaign list shows each job's live status, from processing to finished. Underneath, Tailsearch queries six search engines, including Google, Bing, DuckDuckGo, and Yandex, and reads up to four pages of results per engine, with a separate title-and-quote pass for exact matches.

Screenshot proof engine
Puppeteer captures a screenshot of every match, so each republication ships with its own evidence. The results view lists each site with its matched title, snippet, search engine, and every row carries its screenshot.

Campaign analytics rollup
Each campaign rolls up into live stats: domains count, min, average, and max similarity scores, and the top domains across every article in the group.

Ranked output and export
Tailsearch ranks every republication by match percentage, with a slider that sets the threshold. Analysts calibrate it to the complexity of each campaign, since long or loosely worded headlines change what a fair match looks like. They then export the full results as a CSV, download every screenshot in one ZIP, or save any single screenshot straight from its row.

AI semantic matching
Behind every result above, OpenAI compares each candidate page to the original by title, snippet, and description, so a real republication separates from a chance coincidence.
Automated verification and dedup
The same matching core runs initial filtering, date verification, and duplicate protection before anything reaches the results view, so each match counts once.
What changed after launch
Operational speed changed first. Tracking one article's spread dropped from an hour to five minutes, and full report assembly halved. That freed the analytical team for strategic work that tools can't replace. The team parsed 6,000 articles across 350 media platforms and built the Outset Media Index, a ranking with a proprietary distribution-quality score. By hand, that study would have taken four months of continuous analysis. With Tailsearch, it took 21 days. The build also turned a positioning line into fact. Outset PR has long called itself a data-driven agency, and the parser and the Index put verified numbers behind it. When the team shapes a media plan now, the client sees a quantified reason for every outlet, alongside the expert recommendation.
Two years of judgment, now measurable
Any agency can subscribe to Brand24. Nobody can buy the two years of industry judgment that now sit behind every line of a 328-outlet ranking, scored on a parameter Outset PR built, verified, and keeps refining.
A proprietary index
The distribution-quality parameter was invented and verified inside Outset PR, proven against thousands of articles. It comes from no off-the-shelf tool, and it belongs to the client.
Article-level tracking no tool sells
Following one story's digital trace, including temporary placements, partial-title matches, and removed content, has no commercial equivalent. Monitoring tools search brand mentions in a fixed site list, so this capability stands alone.
A compounding record
The Outset Media Index carries historical data across 328 outlets, and the picture sharpens the longer the parser runs. A competitor starting today stays behind by the whole accumulated span.
Scale without headcount
Tailsearch removes the manual ceiling on coverage, so Outset PR extends to new markets and geographies while the team stays the same size.
Built with moat8
Co-built product, opened with a joint R&D phase. moat8 built the AI infrastructure behind Tailsearch and Outset PR built the Outset Media Index on top of it.
Assessed whether full automation was realistic before any build. The finding: full source coverage wasn't viable in reasonable time, so the scope moved to where the tool returns the most value.
Built article intake, six-engine search, semantic matching, verification, and the screenshot pipeline. Most of the effort went into prompt tuning, teaching the system to tell a real republication from a coincidence.
On top of the parser, Outset PR analyzed 6,000 articles across 350 platforms and built the Outset Media Index, 328 outlets scored on a proprietary distribution-quality parameter, in 21 days.
System components enabled
What it runs on
A production stack chosen for reliable execution at volume and accurate matching.
TypeScript gives type safety across the service. BullMQ guarantees every job runs and handles failures, retries, and search-engine rate limits. Puppeteer captures a screenshot of each match. Search API queries the different search engines, and Parsing API pulls the content of every page it finds. OpenAI judges how closely each page matches the original and detects the republications.
A base stack for the interface: React and TypeScript with Mantine for ready UI components.
Perplexity enriches the found articles and surfaces republications beyond the other search paths. GPT-4.1 mini reads each candidate and works out whether it traces back to the original story.





