Skip to main content
Every CUFinder signal is produced by the same underlying mechanism: we capture data over time, compare consecutive snapshots, and emit a signal whenever a meaningful change occurs.

The detection pipeline

1

Crawl and snapshot

Company pages, job postings, employee profiles, and funding records are captured on a recurring schedule and stored as point-in-time snapshots.
2

Compare consecutive snapshots

Each new crawl is diffed against the previous one. Fields like employee_count, job_count, name, description, locations, and funding rounds are checked for change.
3

Evaluate trigger conditions

Each signal has a precise, deterministic trigger. Some fire on a single field change; others require a threshold, a rolling baseline, or a multi-day window.
4

Assign magnitude

Quantitative changes are sorted into magnitude buckets so you can prioritize. See Magnitude buckets.
5

Store metadata

Many signals persist extra context in a meta object, the function that was hired for, the country expanded into, the keyword that was added, so the signal is immediately actionable.

Three kinds of trigger logic

The simplest signals fire on any change to a tracked field. name_change fires when the name string differs. employee_growth fires when headcount rises by at least one. These are sensitive, so they are best filtered by magnitude.
Many signals compare the current crawl against a rolling baseline. followers_spike fires at 3× the previous six-crawl average. jobs_open_spike fires at 2× the previous four-crawl average. Thresholds filter out ordinary movement so only anomalies surface.
The highest-value signals look across time and across other signals. office_consolidation waits for three closures in 90 days. acquired_signal requires a new parent plus a name or description change within 60 days. Composite signals are built entirely from other signals firing together.

Confidence and scrutiny

Not every change is equally trustworthy. Some signals are emitted with extra scrutiny or lower confidence because the underlying data is noisy.
followers_decrease is often a Professional Network-side correction rather than a real decline, so it is emitted with extra scrutiny. founded_year_change is usually a data correction, so it carries a confidence of 0.5 and requires confirmation before you act on it.

Attribution

People signals are attributed to the right company automatically. When a person’s current_company changes, employee_joined is attributed to the company they moved to, while employee_departed is attributed to the company they left. This keeps every people signal anchored to the correct account.

Understand magnitude next

See how quantitative changes are bucketed into low, moderate, high, and hyper.