Product

What's Inside an Orbit Intent Topic?

A field-level teardown of how Orbit builds an intent topic, what a person-level signal contains, and what a score of 80 actually represents.

George Gogidze George Gogidze · · 9 min read
What's Inside an Orbit Intent Topic?

Most intent vendors hand you a number. “Acme Corp: surge score 87.” No taxonomy, no signal breakdown, no way to audit what went into it. You either trust the black box or you don’t.

I am George, founder of Leadpipe. We built Orbit because we got tired of black boxes. When someone opens an Orbit topic in the dashboard, they can see the topic definition, the people matched to it, each person’s signal strength, and which pages on which sites produced the behavior. This post is a field-level tour of what an Orbit intent topic actually contains.

The short answer

An Orbit intent topic is a keyword-level category inside a taxonomy of 20,810 topics. Behind each topic is a machine-readable definition (type, industry, category, keyword triggers), a population of people who have shown research behavior on that topic across our cross-site pixel network, and a per-person intent score from 1 to 100. The topic refreshes daily against 60 billion behavioral signals collected across roughly 5 million websites. You get the topic, the people, the contact data, and the receipts.

That is the one-paragraph version. The rest of the post is the anatomy.

The four layers inside a topic

Every Orbit topic is a stack of four things.

LayerWhat it isExample
Topic recordStatic metadata that defines the topicid: 1234, name: "CRM Software", type: "b2b"
Keyword triggersThe content signals that count as “research on this topic”Pages mentioning “CRM comparison”, “Salesforce vs HubSpot”, pricing pages for CRM tools
Signal poolThe raw behavioral events collected from the pixel networkPage views, dwell time, return visits, cross-site paths
AudiencePeople resolved from signals, filtered to your ICP, scored 1 to 1001,847 VPs at mid-market SaaS, scored 70+, refreshed daily

The topic record lives in our taxonomy. The keyword triggers live in a classification model. The signal pool is rebuilt every 24 hours. The audience is materialized when you save it and re-materialized daily.

Layer 1: the topic record

The smallest unit in Orbit is a topic record. Each one looks like this:

{
  "id": 1234,
  "name": "CRM Software",
  "type": "b2b",
  "industry": "Software",
  "category": "Sales Tools",
  "aliases": ["Customer Relationship Management", "Sales CRM"],
  "relatedTopics": [1235, 1237, 1238]
}

Four fields do most of the work:

  • type is b2b, b2c, or both. It controls which audience types the topic surfaces against.
  • industry maps to a 346-industry taxonomy used in ICP filters.
  • category is the editorial grouping (“Sales Tools”, “Cybersecurity”, “HR Software”).
  • aliases are the alternate phrasings people use in content. “CRM Software” and “Customer Relationship Management” map to the same topic.

There are 20,810 topic records as of this week. We add topics when meaningful clusters of content appear that the existing taxonomy does not cover. Competitor launches, new product categories (agentic AI, vertical SaaS verticals, regulatory frameworks) are common triggers.

Layer 2: keyword triggers

A topic is only useful if we know what research on that topic looks like in the wild.

Each topic has a classifier behind it that decides whether a given page counts as “on-topic” content. The classifier is trained on a corpus of pages we and our network know are about that topic: vendor product pages, comparison articles, category pages on review sites, analyst reports, pricing pages, “alternatives to X” pages.

A page on CNN about a tech acquisition is not a signal for “CRM Software.” A G2 category page listing CRM vendors is. A pricing page on a CRM vendor’s own site is a strong one. A “Salesforce vs HubSpot” comparison is the strongest.

We weight signals by page type. Pricing pages and head-to-head comparisons carry more weight than top-of-funnel blog posts. That weighting is why two people reading “10 tips for CRM adoption” score lower than one person reading “Salesforce vs HubSpot pricing” three times.

Layer 3: the signal pool

This is the part most vendors never expose. Under each topic is a live pool of behavioral events.

Our cross-site pixel network sits on roughly 5 million websites. Every day it collects about 60 billion signals, with the usual long tail of repeat events, bot traffic, and low-dwell noise. After filtering, classification, and identity resolution, a meaningful fraction of that traffic ends up attached to topic records.

For each person-topic pair we track:

  • Pages viewed on the topic (count and URLs, hashed where needed)
  • Dwell time across those pages
  • Return visits on the topic over the last 7, 14, and 30 days
  • Cross-site path (did they visit three different vendor sites in the same category?)
  • Recency (was the last signal today, last week, last month?)

These feed into the score. They also feed into topic-level trend endpoints so you can see whether a topic’s audience is growing, shrinking, or steady week over week. This is the same layer powering our Intent API’s 20,000 topics.

Layer 4: the scored audience

This is where the topic becomes useful for a go-to-market team.

When you save an Orbit audience, you combine:

  1. One or more topic IDs.
  2. A minimum score threshold (default 70).
  3. ICP filters: seniority, industry, company size, department, job title, state, revenue range, contact availability.

Orbit joins the signal pool to the identity graph, applies your filters, and returns person-level records. Each record carries the full contact payload: name, business and personal email, phone, LinkedIn, job title, company, plus the intent score and the specific topics they matched on.

The difference between a company-level and person-level intent system is simple. Company-level tells you Acme Corp is researching CRM. Orbit tells you Sarah Chen, VP Marketing at Acme, is researching CRM, and here is her email.

What a single person-topic row looks like

Here is a real shape, with names masked:

{
  "person": {
    "name": "Sarah Chen",
    "businessEmail": "sarah.chen@acme.com",
    "phone": "+1-415-555-0142",
    "linkedin": "linkedin.com/in/sarahchen",
    "title": "VP Marketing",
    "seniority": "VP",
    "department": "Marketing"
  },
  "company": {
    "name": "Acme Corp",
    "domain": "acme.com",
    "industry": "Software",
    "size": "201-500",
    "revenueRange": "$50M-$100M"
  },
  "intent": {
    "topicId": 1234,
    "topicName": "CRM Software",
    "score": 87,
    "topicOverlap": 2,
    "firstSeen": "2026-04-17",
    "lastSeen": "2026-04-23",
    "signalsLast7d": 11
  }
}

Every field in that object is a filter or a trigger or an answer to a rep’s question. “Is this person senior enough?” seniority: VP. “Are they at the right size company?” size: 201-500. “Are they actually researching right now or did they read one blog post a month ago?” lastSeen: 2026-04-23, signalsLast7d: 11.

What a score of 80 means (short version)

We have a full post on how to read the Orbit intent score. The short version:

  • Below 50: incidental exposure, likely noise.
  • 50 to 69: mild signal. One or two pages, single session.
  • 70 to 84: meaningful research. Multiple pages across multiple days, typically more than one site.
  • 85 to 94: strong research. Multi-session, cross-site, recent pricing or comparison page activity.
  • 95 to 100: late-stage. Repeated pricing and competitor comparison behavior in the last week.

The default audience threshold is 70 because below that you are looking at browsers, not buyers. For competitive intel (“who is looking at my competitor”), most teams raise the floor to 80.

How this differs from publisher co-op intent data

If your reference for intent data is Bombora, it helps to see the architecture difference side by side. We covered this in detail in Orbit vs Bombora, but the compressed version lives in the topic anatomy.

LayerBomboraOrbit
Topic record~12,000 category-level topics20,810 keyword-level topics
Signal sourceCo-op of B2B publisher sitesCross-site pixel network across ~5M sites
ResolutionIP to companyIdentity graph to person
Signal detailAggregated company surgePer-person pages, dwell, cross-site path
RefreshWeeklyDaily
Contact data in the outputNoName, email, phone, LinkedIn included

Bombora is strong on co-op breadth across known B2B publications. Orbit is strong on person-level resolution and keyword granularity. The underlying topic anatomy is different because the signal collection model is different.

Why daily refresh matters

Intent decays. Someone researching CRMs this week may have signed by next Friday. If your feed refreshes weekly, you miss most of the buying window. If it refreshes daily, you have a working surface.

Every Orbit topic re-scores its audience every 24 hours. New people appearing above the threshold get added. People whose signals went cold drop off. The daily run history is exposed in the dashboard and via the API, so you can audit what changed.

We wrote more about this in why Orbit refreshes intent daily. For this post, the relevant point is that a topic is not a static list. It is a window into who is researching right now.

What you can do with one topic

One topic, well-chosen, is enough to drive a pipeline program. We have customers who run a single audience per quarter.

A reasonable starter recipe:

  1. Pick one topic that describes your category tightly, plus one topic that describes your primary competitor.
  2. Set minTopicOverlap: 2 so people must appear on both.
  3. Filter to seniority in your ICP (VP, Director, C-Suite).
  4. Filter to size and industry ranges that match your best customers.
  5. Set min score to 75.

The output is a daily list of senior buyers researching both your category and your main competitor. That is not a cold list. That is a working weekly pipeline.

If you are newer to the category, start with our person-level intent audiences walkthrough or the intent data glossary.

Where to go next

If you want the score breakdown in depth, read reading the Orbit intent score. If you want the decision framework for whether Orbit is the right replacement for a publisher co-op, read can Orbit replace Bombora. If you want the category primer, the in-market buyer intent post covers the fundamentals.

Build your first Orbit audience in under 20 minutes. 5M-site pixel network, 60B+ intent signals, daily refresh, person-level resolution. Start free →