Understanding Signals

Signal Pipeline

Signals flow through TrailSpark in a defined pipeline:

Source → Staging → Mapping Rules → Processing → Lead Profile → Evaluation
  1. Staging: Raw signals arrive via webhooks and are stored in the signal_staging table
  2. Mapping: Signals are matched against your configured mapping rules
  3. Processing: Matched signals create or update leads and accounts
  4. Evaluation: Processed signals contribute to lead and account scores

Signal Sources

TrailSpark auto-detects the source from payload structure. Recognized sources:

SourceHow signals arrive
SegmentIdentify, track, and page events via webhook destination
MarketoMarketing automation events (detected by mktLeadId in payload)
HubSpotCRM events (detected by portalId or hs_object_id)
SalesforceCRM events (detected by sObject in payload)
Custom / GenericAny system sending HTTP POST to your webhook endpoint. Falls back to generic if no source is detected

You can also explicitly set the source via the source-specific webhook URL (/api/signal-staging/webhook/{source}/{apiKey}) or by including an X-Source header or source field in the payload.

Signal Types

When creating mapping rules, you assign a signal type to categorize the signal:

TypeUse for
Page ViewWebsite page visits
Form FillForm submissions
Product ActivityIn-product actions
Sales EventSales interactions
Email OpenEmail opens
Email ClickEmail link clicks

Signal Components

Each staged signal contains:

FieldDescription
Signal SourceOrigin system (segment, marketo, hubspot, custom)
Event TypeTechnical event identifier (track, page, identify)
PayloadFull JSON event data
Processing Statuspending, processing, completed, failed, skipped, permanently_failed
Mapped RuleID of the mapping rule that matched (after processing)

Signal Mapping Page

Navigate to Signal Mapping from the main navigation. The page has two tabs:

  • Signal Rules -- View, create, edit, and delete mapping rules
  • Signal Queue -- View staged signals grouped by pattern, and create rules from them
Trailspark Signal Mapping Page

Signal Processing States

These are the processingStatus values on staged signals:

StatusMeaning
pendingAwaiting processing
processingCurrently being processed
completedSuccessfully matched and stored
failedProcessing encountered an error (retried up to 3 times)
skippedNo matching rule found or limit reached
permanently_failedFailed after max retries, will not be retried

Plan Limits

Each plan defines a maxRawSignals limit (monthly) and a signalRetentionPeriod (in days). When you approach or reach your raw signal limit, usage warnings display in the Signal Explorer and webhook responses return 429 status codes. Paid plans can enable usage overages in Settings > Billing.

Next Steps