MIT open source, paid data

Open source Clearbit Reveal alternative: looot-reveal

See which companies visit your website, at company level.

The code is MIT open source. The data is not free and not self-hosted: every real run calls looot and pays per call at the catalog price shown before the run.

Short answer

What is looot-reveal?

looot-reveal is an MIT-licensed web app and CLI that turns visitor IP addresses into the company that owns the network. It reads an access log, a CSV or a tracking snippet, drops ISP, hosting and VPN traffic, and flags matches against your ICP. It stops at the company. The data is paid per looot call.

What it does

What looot-reveal does and how to run it

It reads a combined-format access log, a CSV with an ip column, JSON lines or visits sent by a small snippet. Each new IP goes down an ordered list of providers and the walk stops at the first ISP, mobile, hosting or VPN verdict or at the first confident company match.

The company that is left is enriched from its domain and shown in a feed with the pages it viewed. Every ICP flag lists its signals, the provider that supplied each one and the cost of that call. There is no hidden score.

It is company level by default. It never tries to name a person behind a visit. An optional person-level slot exists for US visitors. It ships off, with no supplier, and needs a setup page with five ticked conditions.

This is the job that products such as RB2B and Clearbit Reveal do.

Commands for looot-reveal
git clone https://github.com/loootai/looot-reveal && cd looot-reveal
npm ci
npm run demo
npm run reveal -- --input examples/access.log --dry-run
export LOOOT_TOKEN=...
npm run reveal -- --input access.log --cap 0.50

Facts

Facts from the repository

Read from GitHub on 2026-10-11.

Facts about looot-reveal
JobSee which companies visit your website, at company level.
LicenseMIT
LanguageTypeScript
A real run needs
  • Node.js 20.9 or newer to run it, 22.12 or newer for its tests
  • A looot token with the scopes runs.execute, catalog.read, runs.read and usage.read, for real lookups only
  • A funded looot balance, for real lookups only
  • An admin password of 12 characters or more for the web app outside the demo
Demo modeYes. npm run demo shows made-up companies on documentation addresses. It needs no token, makes no looot call and keeps its data in memory. It refuses to start if a token or a data file is present.
Repositorygithub.com/loootai/looot-reveal
Facts read on2026-10-11

Data and price

Endpoints it calls, with the live price

Every real run calls these looot endpoints. The price column is read live from the catalog, never typed into this page.

Endpoints called by looot-reveal with their live catalog price
EndpointUsed forLive price
ipinfo-liteipinfoNetwork owner name, domain and ASNreading live price
ipinfo--2ipinfoOwner, location, network type and VPN flagsreading live price
people-data-labs-ip-enrichpeople-data-labsCompany behind an IP, charged on a match (off by default)reading live price

Prices are read from the looot public catalog when the page loads. Some endpoints are priced per result, so a run that returns many rows costs more than one call. The CLI dry run prints the exact quote for your input before anything is charged.

Limits

What looot-reveal does not do

  • An IP lookup returns the organisation that owns the network. It does not identify the visitor, and consumer ISP, mobile, hosting and VPN addresses are dropped from the feed.
  • Company level only by default. The optional US-only person-level slot ships off with no identity supplier. looot supplies no person-level visitor identity.
  • An IP address is personal data in the EU and the UK. You need a consent banner before the snippet sends anything, and this page is not legal advice.
  • When a provider returns only the network name, the app falls back to a hint list to spot ISPs. That list is a heuristic.
  • Response parsing was written from public field lists and fixtures. The README says it was not checked against a recorded paid response.
  • The snippet and collect route were not load tested, and the rate limit is in memory per process. The web app has one admin password and no per-user accounts.

With an agent

Run it with your agent

Copy the prompt, give it to the agent you already use, and it dry-runs first.

Prompt: looot-reveal
Use looot to find which companies visited my website from an access log. Read https://looot.ai/skill.md first. Then clone https://github.com/loootai/looot-reveal, run its dry run on my log file and show me the quote and the cap. Run the lookup only after I say yes, and list the visiting companies that match my ICP with the pages they viewed.

FAQ

Questions about looot-reveal

It turns visitor IP addresses from an access log, a CSV or a tracking snippet into the companies that own those networks. It drops ISP, hosting and VPN traffic and flags the rest against an ICP you set.

No. It stops at the company by default. An optional US-only person-level slot exists, but it ships off and with no identity supplier, and looot supplies no person-level visitor identity.

The code is free under the MIT license. The data is not. Every real lookup is a paid looot call at the catalog price, quoted before the run. Demo mode and the dry run cost nothing.

The table on this page shows the live catalog price of each endpoint. The first provider in the walk is free. The CLI quote prices the worst case for your file, and an address seen again costs nothing.

An IP address is personal data in the EU and the UK, so you need a consent banner before the snippet sends anything. The repo ships privacy controls and a sample notice. This is not legal advice, so ask a lawyer.

Yes. npm run demo and the dry run need no token. A real lookup needs a token with four scopes and a funded balance.

Yes. It runs on your machine or your server and keeps its data in plain files on disk. Outside the demo the admin pages need a password you set, and the README advises putting them behind a VPN or an identity-aware proxy.

Give your agent the prompt on this page and the setup link https://looot.ai/skill.md. The repo ships a skill that always dry-runs first and never raises the cap on its own.

Keep going

For agents
repo
https://github.com/loootai/looot-reveal
job
See which companies visit your website, at company level.
license
MIT
language
TypeScript
endpoint
ipinfo: ipinfo-lite (ip_lookup)
endpoint
ipinfo: ipinfo--2 (ip_lookup)
endpoint
people-data-labs: people-data-labs-ip-enrich (ip_enrich)
price
per call, read live from the catalog on the web page
framing
MIT code, paid data, every real run calls looot
setup
https://looot.ai/skill.md
llms.txt
https://looot.ai/llms.txt
read
2026-10-11

Run looot-reveal on your own looot account.

Try the demo first, no account needed. For a real run, start your workspace, top up, and use the quote the repo prints before it spends anything.