> ## Documentation Index
> Fetch the complete documentation index at: https://docs.erdo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Lead capture observations

> Investigate lead quality with passive submission evidence, without adding a challenge to the form.

Erdo records passive observations alongside browser-form leads to help investigate
traffic quality. Passive collection remains enabled independently of any optional
form protection. The form submits as usual: observations add no checkbox,
verification request, external reputation lookup, or waiting screen.

## What is recorded

The `capture_observation` column contains a JSON record with:

* The server's observation time, format version and `observe` mode.
* The request's user agent and, when available, a forwarded visitor IP claim.
* For shared Erdo lead forms, time since the form mounted, counts of input events
  and browser-reported trusted input events, and the browser's automation flag
  when available.

The observation contains no form field values, typed characters or pointer
movements. Normal contact information is still saved in the lead's usual columns.

## Read observations with their limitations

These are clues for an investigation, not a bot score or identity verification.
Browser signals can be imitated or suppressed. The forwarded address is marked
`unverified_proxy_header`: it is not authenticated evidence of a person's address,
and a shared or proxy address does not establish who submitted the form.

Client status is `reported`, `missing` or `invalid`. Missing data can come from an
older or custom form; invalid data means the observation did not pass format
validation. Neither status rejects the lead or classifies the person as a bot.
Fast completion, autofill, Gmail addresses and a lack of reply also do not establish
automation on their own.

## Use the existing lead and execution records

Inspect `capture_observation` through the dataset's row details or query tools.
The event pipeline's normalized execution preview retains each capture's
observation, including later form steps and retries. The dataset row follows its
existing merge or overwrite policy, so use execution records to reconstruct the
sequence rather than assuming the row describes the latest request.

Historical captures are not backfilled. Shared-kit forms collect browser signals
after loading the updated runtime; custom forms may have only request evidence.

Observe mode withholds this column from automatic exclusion and paid-enrichment
skip decisions, peer comparisons and arrival-email content. Existing decisions
continue to use their existing evidence. Compare observations with actual sales
outcomes before using them to design any filtering experiment.

Observations do not enable Cloudflare challenges or phone verification.
[Optional lead form protection](/lead-form-protection) can separately enable
Managed Turnstile for selected pipelines. It is off by default, retains these
observations, and does not introduce IP-based ranking.
