For vertical SaaS
Revenue infrastructure for vertical SaaS founders
Your market is not infinite. It is a few thousand companies you could almost name, and that changes what good targeting means.
When the market is four thousand companies, completeness beats volume. Missing three hundred of them is missing a slice of your revenue, and contacting the same two hundred twice in a year is worse than contacting nobody at all.
That makes the account list a durable asset rather than a campaign artifact. It lives in Records as canonical truth, gets extended from working Tables, and every sequence, call, and reply attaches to a company you already know.
- Who this is for
- Seed to Series A software companies serving one industry: field service, manufacturing, hospitality, trades, or logistics operators. Four to fifty people, founder led revenue.
- What it looks like today
- Generic sourcing tools are built for a market of millions and fall apart on a market of thousands. You end up with an incomplete list, duplicates from three exports, and no record of who was already contacted.
- What changes
- You build a census instead of a list. One row per real company, deduped, enriched once, refreshed on a schedule, carrying every touch and reply for as long as the company exists.
Example searches
Ask for it the way you'd say it
Every search below runs on the same hosted Tables, with the cost previewed before anything is spent.
The whole market, once
build a list of every independent equipment rental company across these twelve states
Rows arrive deduplicated against what you already hold, so a second pass extends the census instead of doubling it.
Qualify by what they operate
read each company site and tell me how many locations and vehicles they run
The extracted number and the page it came from sit side by side, so an odd value can be checked in seconds.
The owner, not the office
find the owner or general manager at each of these companies with a direct phone
Contact type is recorded per row, so you can see which accounts are reachable by phone and which are not.
Plays
Three motions you can run this week
Each one is a chain of Oxygen primitives — the same hosted objects your workspace already has, composed.
Build the census
One row per real company in your market, deduped and enriched once.
- 1Source from directories, maps results, and web search into a working table.
- 2Dedupe, enrich, then promote the survivors into accounts you intend to keep.
- 3Tag each account with its sub segment so later lists are cut from one vocabulary rather than reinvented.
oxygen tables dedupeKeep it current without rebuilding it
A market list that ages well instead of expiring after a quarter.
- 1Schedule a refresh that revisits company sites and updates the changed fields.
- 2Review the rows that moved rather than reading the whole table again.
oxygen workflows callWork the same accounts for years
Every touch, call, and reply stays attached to the company record.
- 1Enroll in small waves and let suppression skip anyone already in a conversation.
- 2Log call outcomes on the account so the next attempt reads the last one.
oxygen crm activity log
Capabilities
What you get
A census, not an export
Rows deduplicate against the accounts you already hold, so running sourcing again extends your coverage instead of creating a second list nobody trusts.
Enrichment you pay for once
Contact data is written onto the record and reused everywhere, rather than bought again each time somebody builds a new campaign.
History that survives the campaign
Calls, emails, replies, and notes attach to the company, so an account you touched last year opens with its own history in front of you.
Free to build, paid to send
Building and maintaining the census costs nothing. Enrichment draws credits, and connecting a sending account needs a plan.
Instead of
The stack this replaces
Native, on one contract and one credit balance — not another tab wired to the last one.
- Clay
- Apollo
- Instantly
- Pipedrive
- Google Sheets
- Zapier
Data sources
What the data actually comes from
Every value lands with its provider and cost recorded on the cell.
- Op
Open Web Ninja
Local and maps style company results, which is where owner operated businesses are actually listed.

Exa
Web search to catch companies that appear only in an association page, a directory, or a trade article.

People Data Labs
Firmographics for the companies large enough to carry a record, used to band the census by size.

Blitz API
Finds the owner or general manager, which is the person who signs at an owner operated business.
Run these on Oxygen's managed credits, or connect your own provider keys and pay the vendor directly — the same columns, the same runs, the same provenance either way. See every integration.
Limits
Where this stops
- A census is only as complete as public listings allow. Some companies appear nowhere but a trade directory, so expect to add rows by hand and treat the sourced set as your floor rather than the total.
FAQ
Questions people ask first
How do we know the list is complete?
What stops us contacting the same company twice?
Our buyers are not on LinkedIn. Does that matter?
Can we hand this to a sales hire later?
Is this useful for a market of fifty thousand companies?
What does maintaining the census cost each month?
Put your GTM motion on one stack
Sign up, get a working workspace with a one-time credit grant, and run the first play end to end without wiring five tools together.