Watching rivals is easy. Comparing them is the work.

Three pricing pages have three layouts, three vocabularies and, if you are not careful, three currencies. One schema across all of them turns that into a table you can actually read down.

Get API key
linear.app200
calls made1
urls returned988
releases found24
about agents10
credits1
permission needednone

one schema · every rival

[ 01 / How it works ]

One schema. Every rival.

The cost of competitive tracking is never the first site. It is keeping a parser alive per competitor, and rewriting one every time somebody ships a redesign.

Find

Locate the pages that matter

Map each site once and keep the handful of URLs worth watching. Pricing, changelog, careers, whatever your question actually lives on.

const { links } = await hf.map({
  url: rival,
});

Define

Name the fields once

One schema describes what you want from every rival. Their layouts differ, their markup differs, and none of that reaches your side of the call.

const schema = {
  plans: [{ name, monthlyPrice }],
};

Compare

Run it across all of them

The same call handles every site, so the output arrives already in one shape and the only work left is deciding what the movement means.

await hf.extract({
  urls: rivals,
  schema,
});

[ 02 / The demo ]

Everything a competitor shipped this year, from one call.

No announcement, no account, no scraping their app. A changelog that publishes dated URLs is a public record of what a company decided to build, and reading it takes a single request.

linear.app · releases in 2026POST /v1/web/map988 urls · 1 credit

10 of their 24 releases this year are agents, MCP or coding.

That is a roadmap. Nobody sent it to you.

agent workeverything else
  • 20 AugCoding environments
  • 13 AugTeam initiatives
  • 30 JulCoding sessions on mobile
  • 23 JulAgent assisted editing
  • 20 JulIntroducing Loops
  • 02 JulInitiative properties
  • 18 JunAgent assisted project updates
  • 11 JunCoding sessions
  • 04 JunTeam documents
  • 27 MayLinear diffs
  • 21 MayProject Slack channels
  • 14 MayCode intelligence
  • 30 AprReleases
  • 23 AprLinear agent MCP support
  • 16 AprLinear for Microsoft Teams
  • 09 AprMulti level sub teams
  • 02 AprWeb forms for Linear Asks
  • 24 MarIntroducing Linear agent
  • 12 MarUI refresh
  • 26 FebDeeplink to AI coding tools
  • 13 FebAdvanced filters in private teams
  • 05 FebLinear MCP for product management
  • 29 JanTime in status
  • 22 JanNavigation in Linear mobile

read from their sitemap on 2026-08-25 · no account, no announcement, no permission

Every dated URL is a dated decision. The slugs above came back inside an ordinary sitemap, so the dates, the titles and the order are all theirs. Run the same call against the rest of your market on a schedule and the question stops being what a competitor announced and becomes what they have been quietly working on for the last six months.

[ 03 / Built for ]

Teams who have to answer what changed this week.

Anyone whose plan depends on what a competitor is doing right now rather than what they were doing last quarter.

Pricing teams

A rival repositions and the deck is wrong before the meeting starts.

The board rebuilds on a schedule, so the number in the deck is current.

Ecommerce

Matching prices means a scraper per retailer and a fix most weeks.

One schema covers the set, and a redesign no longer breaks the run.

Sales enablement

Battlecards are written once and quietly rot from then on.

Fields refresh from the source, so reps quote what is on the page today.

Product marketing

Positioning shifts show up in launch copy long before an analyst notes it.

Watch the pages themselves and the shift is visible the week it happens.

Market monitoring

Covering a whole category by hand does not survive contact with a quarter.

Adding the fortieth competitor is one more URL, not one more project.

Investor research

Diligence on a sector means reading the same six pages for every company.

Pull them all at once and spend the time on the comparison instead.

[ 04 / Keep going ]

Same API. Other problems.

[ Start ]

Clean web data is one call away.

500 free credits, no card required. Failures are never billed.

Success rate

 

Median scrape

 ms