Not a list. A live stream of the data your business runs on.
Describe your target in plain words. An agent plans the crawl, you approve it, and fresh data from public sources starts flowing in — and keeps flowing. The first 100 sites are free.
- 100 sites free
- Public sources only
- Fresh, dated rows
- No credit card
From one sentence to a stream
Four steps to set it up. The fifth is the point: the crawl keeps running and your data keeps arriving.
- 01
Describe
Write what you're looking for, the way you'd tell a colleague.
Dental clinics in Germany with online booking - 02
Clarify
If something's missing, the agent asks 3–5 quick questions. A detailed prompt skips this step.
Clinic size?1–3 dentists4–10AnySkip - 03
Approve the strategy
You get a crawl plan: sources, filters, fields. Edit it or approve it as is.
strategy.yamlEditApprove - 04
Get the data
The crawler starts. Results appear as they're found — the first ones in minutes.
+zahnarzt-mueller.de+praxis-weber.de+smile-berlin.de37 matched - the product
Keep it flowing
The strategy becomes a stream: new matches and changes arrive every day, straight into your CRM or sheet.
+23 todaynext pass in 6h
You see the plan before a single page is fetched
The agent turns your prompt into a crawl strategy — a concrete document, not a black box. Nothing runs until you approve it.
See exactly what we collect
Where we look, what a site needs to qualify, which fields we keep.
Change anything first
Tighten a filter, add a field, drop a source — before the crawler starts.
Run it again and again
An approved strategy is what the stream runs on. It keeps finding new matches.
goal:Independent dental clinics in Germany, online bookingsources:- search: "Zahnarzt Online-Termin {city}" × 80 cities- directories: public clinic listings- expand: links from matching sitesinclude_if:- country: DE, language: de- mentions: Online-Termin | Termin buchen- booking widget: Doctolib | Dr. Flex | formexclude_if:- chain or franchise markers- marketplace and directory pagesfields:free:[domain, name, city, phone, email, booking_tool, cms]llm:[specialisations, dentists, languages, fit_score]paidvolume:~1,200 candidates → first 100 freestream:daily pass, new + changed
Example strategy. Yours is drafted from your prompt.
What lands in your pack
The first 100 sites are free, with everything we can read without an LLM. Paid adds the analysis — and the stream.
| What you get | Free · 100 sites | Paid · stream |
|---|---|---|
| Sites that pass your strategy's filters | thousands | |
| Name, language, country, title and description | ||
| Contacts from public pages: email, phone | ||
| Social profiles | ||
| Technologies: CMS, e-commerce, analytics, hosting | ||
| LLM analysis: what they do, segment, services | ||
| Custom fields from your prompt: prices, catalogue… | ||
| Fit score: how well each site matches the task | ||
| Stream: new matches every day | ||
| Change events: new tech, new page, site gone | ||
| Stream dashboard and digests | preview | |
| Export | CSV | CSV, JSON, Sheets, API |
A few rows of a pack
| domain | city | booking_tool | observed | specialisationspaid | fit_scorepaid | |
|---|---|---|---|---|---|---|
| zahnarzt-mueller.de | Munich | [email protected] | Doctolib | 2026-09-23 | ||
| praxis-weber.de | Hamburg | [email protected] | form | 2026-09-23 | ||
| smile-berlin.de | Berlin | [email protected] | Doctolib | 2026-09-22 | ||
| dentalpraxis-kiel.de | Kiel | [email protected] | Dr. Flex | 2026-09-22 | ||
| zahnzentrum-lange.de | Leipzig | [email protected] | Doctolib | 2026-09-21 |
A list is a dead end. A stream is a process.
A one-off list starts going stale the day you export it. You can't build a process on it. On a stream you can build a factory: fresh companies come in every day, changes are flagged, and your team works from what's true now.
- praxis-hoffmann.declosed
- zahn-arztpraxis.dechanged site
- dental-koeln.demoved to Shopify
- smile-muenster.de
- zahnarzt-braun.declosed
- +zahnarzt-mueller.denew · fit 0.92
- +praxis-weber.denew · fit 0.81
- +smile-berlin.dechanged · Doctolib
- Snapshot, stale from day one
- Always fresh, every row dated
- Same database everyone else bought
- Built for your parameters, unique to you
- New companies never show up
- New matches arrive daily
- Changes go unnoticed
- Changes become events: new tech, new page, gone
- Re-buy and re-dedupe every quarter
- Runs on its own, no duplicates
- A file on someone's laptop
- Plugs into CRM, Sheets, Slack, API
- You can't build a process on it
- You can build a factory on it
Lead factory
New clinics that match your ICP land in your CRM every morning, with contacts and a fit score.
Market radar
Know when a competitor's customer switches platforms or a new player enters your niche.
Trigger-based outreach
A site adds online booking, starts hiring or launches a store — your sales team gets a ping the same day.
Watch your data flow in
Crawling the live web takes longer than querying a database. So you don't wait for the end: every site that passes your filters shows up the moment it's checked, and the stream keeps going after the first batch.
- 4,812discovered
- 1,930checked
- 214matched
- 180enriched
Last 14 days
- New matches
- Changes
Show as table
| Day | New matches | Changes |
|---|---|---|
| 1 | 38 | 0 |
| 2 | 27 | 2 |
| 3 | 19 | 3 |
| 4 | 16 | 5 |
| 5 | 14 | 4 |
| 6 | 12 | 6 |
| 7 | 9 | 3 |
| 8 | 11 | 7 |
| 9 | 13 | 5 |
| 10 | 10 | 8 |
| 11 | 12 | 6 |
| 12 | 15 | 9 |
| 13 | 11 | 7 |
| 14 | 23 | 6 |
Live feed
- First results: minutes
- 100 sites: under an hour
- Then: new matches every day
What people stream
Pick one to start from — it goes straight into the field above.
Under the hood
Four parts, each doing one job.
Agent
Turns your prompt into a strategy: queries, sources, filters, fields.
Crawler
Finds candidates: search, public directories, expansion along links.
Scraper
Opens every site and extracts fields without an LLM — the same engine behind our technology profiles.
- paid
LLM layer
Reads the pages and answers the questions in your strategy.
- Public pages only
- We respect robots.txt
- No logins, no paywalls
- Company contacts only — no personal profiles
Pay for the stream, not for a file
Start free with 100 sites. Keep the strategy running when it proves itself.
Stream
the productTBDper month- 1–N strategies running continuously
- New matches and change events every day
- LLM analysis and custom fields
- Dashboard, digests, Google Sheets
Factory / API
Customvolume- Many streams, high limits
- API and webhooks
- CRM integrations
- A one-off large pack if you need it
Pricing coming soon
Questions
What counts as a public source?
Websites anyone can open without logging in, and public directories. No logins, no paywalls.
How fresh is the data?
Every row carries the moment it was observed. On a stream, sites are re-checked on every pass.
What if the strategy is wrong?
You edit it before anything runs. After the first 100 sites you can refine it and run again.
How long does it take?
First results in minutes, the first 100 sites within the hour, large packs over hours — streamed as they are found.
Why a stream and not just a list?
A list goes stale the day you export it and you can't build a process on it. A stream brings new matches every day and flags what changed.
Can I just get a one-off export?
Yes, export CSV at any time. The value is in the flow, but the file is always yours.
Where does the stream go?
The dashboard, CSV or Google Sheets, your CRM, Slack, or webhooks and the API.
How is this different from BuiltWith?
BuiltWith is an archive: the same database for everyone, as of when it was indexed. Collect builds a list for your parameters from the live web, and keeps it current.
Do you collect personal data?
No. Only public company contacts published on company websites.
What should your stream bring in?
Stop buying lists. Build the factory.