MIT open source, paid data

Open source 6sense alternative: looot-intent

Score a list of companies for buying intent and buying stage.

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-intent?

looot-intent is an MIT-licensed web app and CLI that scores a list of company domains from 0 to 100 for buying intent and assigns a stage. Each score lists the signals behind it, the provider for each and what the call cost. The code is open source. The signal data is paid per looot call.

What it does

What looot-intent does and how to run it

Give it company domains and a short ICP description. For each account it calls ten looot endpoints, one per signal: hiring, funding, news, tech stack changes, SEO movement, web traffic, Google ads, LinkedIn ads, Reddit mentions and headcount growth.

It turns the answers into a score and a stage (unaware, aware, considering or deciding) and ranks the accounts. Weights, half-lives and stage thresholds sit in config/intent.config.json, so you edit one file and run again.

There is no model and no hidden constant. Matching uses keyword lists in the config, so the same data gives the same result. A re-run inside the freshness window replays finished calls at no charge.

This is the job that products such as 6sense do.

Commands for looot-intent
git clone https://github.com/loootai/looot-intent && cd looot-intent
npm install --ignore-scripts
npm run demo
npm run intent -- --demo
npm run intent -- examples/accounts.csv --column domain --icp "B2B SaaS, 50 to 500 employees" --max-spend 5 --dry-run
export LOOOT_TOKEN=...
npm run intent -- examples/accounts.csv --column domain --icp "B2B SaaS, 50 to 500 employees" --max-spend 5

Facts

Facts from the repository

Read from GitHub on 2026-10-11.

Facts about looot-intent
JobScore a list of companies for buying intent and buying stage.
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 runs only
  • A funded looot balance, for real runs only
Demo modeYes. npm run demo scores generated accounts on a reserved example domain. It needs no token, makes no network call and costs nothing.
Repositorygithub.com/loootai/looot-intent
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-intent with their live catalog price
EndpointUsed forLive price
predictleads-companies-job-openingspredictleadsHiring and job adsreading live price
predictleads-companies-financing-eventspredictleadsFundingreading live price
predictleads-companies-news-eventspredictleadsCompany newsreading live price
predictleads-companies-technology-detectionspredictleadsTech stack changesreading live price
dataforseo-dataforseo-labs-google-domain-rank-overview-live-aidataforseoSEO movementreading live price
datagma-website-trafficdatagmaWeb trafficreading live price
scrapecreators-google-company-adsscrapecreatorsGoogle adsreading live price
scrapecreators-linkedin-ads-searchscrapecreatorsLinkedIn adsreading live price
scrapecreators-reddit-searchscrapecreatorsReddit mentionsreading live price
companyenrich-companies-workforcecompanyenrichHeadcount growthreading 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-intent does not do

  • It has no first-party visitor tracking, no intent data bought from third-party pools, no CRM sync and no ad orchestration, because looot has no job that supplies them.
  • It has no review-site signal. The catalog has no endpoint for G2, Capterra or Trustpilot.
  • The score is rules from a config file. The ICP text is stored and shown, but matching uses the keyword lists in the config.
  • Traffic and headcount compare against your last run. The first run records a baseline and scores zero for those two signals.
  • The LinkedIn ads signal searches by the first label of the domain, which can match the wrong company.
  • Response parsing was written from provider documentation and fixtures. The README says it was not checked against a recorded paid response, and every signal is marked unverified in the code.
  • The web app has no sign-in. Anyone who can open its URL can start a run up to the cap they type, so keep it on your machine or behind access control.

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-intent
Use looot to rank the company domains in my file by buying intent. Read https://looot.ai/skill.md first. Then clone https://github.com/loootai/looot-intent, run its dry run with my ICP and a spend cap and show me the quote. Run the real scoring only after I say yes, and report the top accounts with the signals and provider behind each score.

FAQ

Questions about looot-intent

It scores a list of company domains from 0 to 100 for buying intent, assigns a buying stage and ranks the accounts. Every score shows the signals behind it, the provider that supplied each and the cost of the call.

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

Each enabled signal gets points in proportion to its weight. Event signals decay with a half-life. Growth signals compare against your last run. There is no model, and the weights live in a config file you can edit.

One account costs the sum of the signals you leave on. The table on this page shows the live catalog price of each endpoint. The dry run prints the quote for your file, and you can switch a signal off to drop its cost.

Yes. npm run demo and the CLI --demo flag use generated accounts and need no token. A real run needs a token and a funded balance.

It has no first-party visitor tracking, no third-party intent pools, no CRM sync and no review-site signal. Its parsers were written from documentation and fixtures and are marked unverified.

You run it yourself. The web app has no sign-in, so keep it on your machine or behind your own access control. The CLI saves its latest run to a local file.

Give your agent the prompt on this page and the setup link https://looot.ai/skill.md. The repo ships a skill that runs the dry run first, then the real run with a cap.

Keep going

For agents
repo
https://github.com/loootai/looot-intent
job
Score a list of companies for buying intent and buying stage.
license
MIT
language
TypeScript
endpoint
predictleads: predictleads-companies-job-openings (jobs_company)
endpoint
predictleads: predictleads-companies-financing-events (company_funding)
endpoint
predictleads: predictleads-companies-news-events (company_news)
endpoint
predictleads: predictleads-companies-technology-detections (company_technographics)
endpoint
dataforseo: dataforseo-dataforseo-labs-google-domain-rank-overview-live-ai (keywords_domain_overview)
endpoint
datagma: datagma-website-traffic (company_traffic)
endpoint
scrapecreators: scrapecreators-google-company-ads (google_company_ads)
endpoint
scrapecreators: scrapecreators-linkedin-ads-search (ads_linkedin_search)
endpoint
scrapecreators: scrapecreators-reddit-search (reddit_post_search)
endpoint
companyenrich: companyenrich-companies-workforce (company_workforce)
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-intent 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.