Product

Why Does Orbit Refresh Intent Every 24 Hours?

Intent decays in days, not weeks. A look at why Orbit runs a 24-hour refresh cycle, how the pipeline actually works, and what weekly refresh costs you.

George Gogidze George Gogidze · · 9 min read
Why Does Orbit Refresh Intent Every 24 Hours?

Most B2B intent platforms refresh weekly. Some still push monthly feeds. By the time an SDR sees the signal, the buyer has already picked a shortlist, and the “in-market” list is a graveyard of people who have already booked demos with somebody else.

I am George, founder of Leadpipe. When we designed Orbit, daily refresh was not a feature we debated. It was the minimum cadence that made the product work. This post is why: what the physics of intent actually look like, how we run the 24-hour refresh pipeline, and what the cost of a slower cadence is in real terms.

The short answer

Intent decays on a timescale of days, not weeks. A buyer who hits peak research intensity on Monday may have signed with a competitor by Friday. A weekly refresh misses between 50 and 75 percent of the actionable intercept window for most B2B categories. Orbit rebuilds every saved audience every 24 hours against the last 30 days of behavior collected across roughly 5 million websites. New people above threshold appear. People whose signals went cold drop off. The output is always a working list, never a stale one. That is why daily is the floor, not the ceiling, for person-level intent.

Now the details.

How fast intent actually moves

Most B2B buying cycles look long in aggregate (weeks, months, sometimes quarters) but the active research phase is short and dense. The real intercept window is usually one to three weeks, and it is characterized by a sharp rise, a plateau, and a sharp decay.

A stylized week in the life of a B2B buyer entering a category:

Day 1    Score 32 (one article read)
Day 2    Score 48 (second site, two pages)
Day 3    Score 67 (comparison article, same site)
Day 4    Score 82 (pricing page, third vendor)
Day 5    Score 91 (two more comparison articles)
Day 6    Score 88 (vendor demo request on someone else's site)
Day 7    Score 72 (one more session, then quiet)
Day 8-14 Score decays as no new activity

The window where this buyer is reachable at score 70+ is approximately days 3 through 10. That is a 7-day reachable window. If your intent feed refreshes weekly, you see this person on day 7 at the earliest, and often day 10 or 14 depending on which day of the week the export runs. You caught them after the pricing page, after the demo request, essentially after they picked someone else.

Daily refresh catches them on day 3 or 4. That is a different conversation.

The cost of weekly refresh, quantified

Here is the same timeline mapped against refresh cadences.

Refresh cadenceDays of reachable window used% of intercept window lost
Real-time (continuous)Days 3-100%
Daily (Orbit)Days 3-10 (<=24h lag)~12%
WeeklyDays 7 or 10 only55-75%
Bi-weeklyMaybe day 10, maybe miss entirely70-100%
MonthlyMisses entirely~100%

These numbers are stylized, not measured. The point is structural, not numerical: as the refresh cadence slows, the slice of the reachable window you actually get collapses.

If your intent tool refreshes weekly, you are paying for 100 percent of the signal and using roughly 25 percent of its value.

Why competitors run slower cycles

There are legitimate reasons weekly or bi-weekly became the default in the older intent data market.

Publisher co-op economics. Bombora aggregates signals from a co-op of about 5,000 B2B publisher sites. Co-op contributors upload logs in batch. The pipeline is built around batch ingest. Weekly aggregation fits that architecture.

Batch signal processing. Older intent platforms built on top of IP-to-company mapping and TF-IDF classification tend to run weekly because the compute cost of daily runs on that architecture is real.

Account-level use cases. If the downstream use is an enterprise ABM platform where accounts get reprioritized in a quarterly QBR, a weekly refresh is enough. Daily adds operational noise without adding signal.

For that use case (enterprise account prioritization), weekly is fine. For person-level outbound, SDR queues, AI SDR daily lists, and live ABM heatmaps, weekly is structurally wrong. We cover the architecture gap in Orbit vs Bombora and can Orbit replace Bombora.

How the Orbit 24-hour pipeline actually runs

The daily refresh is not a marketing claim. It is a real pipeline with specific stages. Here is what happens every day.

Stage 1: signal collection (continuous)

The cross-site pixel network sits on about 5 million websites and collects roughly 60 billion behavioral signals per day. Page views, dwell times, referrers, session identifiers. Collection is continuous; there is no overnight pause.

Stage 2: classification (continuous)

Each page view is classified against the 20,810-topic taxonomy. On-topic events get tagged with the matching topic IDs and a page-type weight (pricing, comparison, and “alternatives” pages score higher than blog posts).

Stage 3: identity resolution (continuous)

Signals get matched against our identity graph. Where we can resolve a signal to a known person, it gets attached. Where we cannot, it lives as an anonymous pool.

Stage 4: daily audience rematerialization

Once per day, every saved audience runs its query against the last 30 days of signals with recency decay applied. New people above threshold appear. People whose signals went cold drop off. The audience is written as a new row count and a fresh dataset, and both the dashboard and the API expose the latest run.

You can see the history via GET /v1/intent/audiences/{id}/runs, which returns each day’s date, row count, and status. It is one of the most useful endpoints for auditing whether your audience is actually being fed.

Stage 5: delivery

Webhooks fire where configured. CSV exports become available. API consumers pull the latest run. The daily cadence is the delivery contract.

Why not hourly?

We get asked this. The honest answer is that hourly does not add meaningful signal for most B2B categories.

  • A person’s score does not change meaningfully in an hour. Behavior aggregates over days.
  • Downstream workflows (SDR queues, Slack alerts, CRM syncs) are typically daily or weekly in cadence.
  • Hourly would multiply compute and delivery cost without a proportional improvement in outcomes.

Daily is the right granularity for person-level intent. Real-time makes sense for visitor identification on your own site (where somebody is live on your pricing page right now), which is a different product. For the real-time side, see intent data vs visitor identification.

What daily refresh lets you do

Daily refresh unlocks workflows that weekly forecloses. A few that are concretely impossible without it.

Same-week competitive intercept. A competitor launches something on Monday. “Competitor X alternatives” starts surging Tuesday. A daily audience catches the surge Wednesday morning. SDRs run targeted outreach Wednesday afternoon. Weekly refresh would first see this on the following Monday, 7 days after the launch, usually after the competitor has converted most of the audience.

AI SDR daily lists. An AI SDR that runs every morning needs a fresh audience every morning. Feeding it a weekly list means 6 out of 7 days it works from a stale prompt.

Live ABM heatmap in HubSpot. Account cards light up as intent rises and dim as it decays. That is only possible if the data rewrites daily. We covered the build in connecting Orbit to HubSpot for a live heatmap.

Slack-level urgency. Alerting on “Contact just crossed score 85” is only meaningful if “just” is less than a day old. Weekly alerts arrive after the deal has already moved.

Honest trend analytics. /v1/intent/topics/movers tells you which topics grew day-over-day. That signal is useful for content and campaign timing. A weekly feed smooths out the day-level movement that contains most of the information.

Daily refresh is the floor, not the ceiling

Daily is what the data quality supports with current architecture. As our pixel network grows and identity resolution tightens, we expect to push into tighter cadences where they matter (real-time visitor ID already runs continuously on-site). The core intent signal (off-site cross-site behavior resolved to a person and scored on a topic) is best served by a 24-hour rebuild window. That is where we are, and that is what most downstream workflows actually need.

Comparison across the intent landscape

ProviderRefreshData unit
Bombora Company SurgeWeeklyCompany
G2 Buyer IntentDailyCompany (on G2 only)
6senseVaries (often weekly)Account
DemandbaseVaries (often weekly)Account
Clearbit Reveal / HubSpot BreezeContinuous (on your site only)Company
LinkedIn lookalikesNot intent (modeled audience)N/A
OrbitDailyPerson + topic

G2’s daily refresh is real and valuable, but the pixel footprint is only G2 itself. 6sense and Demandbase refresh cadences vary; enterprise contracts can include tighter cycles in some configurations. Clearbit on your site updates in real time but only on your site. Orbit’s daily refresh across 5 million off-site sources is the combination that drives the person-level audiences.

For the competitive intel side, see Orbit competitive intelligence. For the score mechanics that the refresh feeds, see reading the Orbit intent score.

What to check if your refresh seems off

Three things to check if your Orbit audience does not look fresh.

  1. Is the audience saved and active? Previews do not refresh. Only saved audiences in active status re-materialize daily.
  2. Is the run history populated? GET /v1/intent/audiences/{id}/runs should show a new row every day. Gaps mean the run failed or the audience was paused.
  3. Is the score threshold stable? If you change minScore frequently, the row count will swing unpredictably. Pick a threshold, hold it for at least 30 days, then measure.

Orbit resolves intent at the person level against a deterministic identity graph — the difference between “an account is in-market” and “this director at this account is researching today.” Try Orbit →