Lead Gen Factory

Beta

Account Settings

All Marketing Intelligence reports use this timezone for day boundaries. Required.

Notification Preferences

Marketing Intelligence panel default

Controls which tab (Native or Everflow) the Offers, Partners, and Advertisers panels open on. Auto uses Everflow when this account has an active Everflow integration, otherwise Native.

Account ID

--

Plan

--

Status

--

Created

--

Team Members

Loading users...

API Keys

Create New Key

Custom scopes (optional — leave unchecked for full access based on role)
Loading API keys...

Usage Summary

AI Calls

--

Builds

--

Leads

--

Storage Writes

--

Audit Log

Loading audit log...

Billing & Plan

Current Plan

--

AI Calls (this month)

--

Leads (this month)

--

Builds (this month)

--
💳
Automated Billing — Coming Soon

Usage-based billing with Stripe will be available here. Your current plan limits are enforced automatically.

Custom Domains

Loading domains...

Integrations

Everflow

Affiliate network API — powers attribution name rendering, reconciliation, and buyer-pool routing.

LeadProsper

Lead-broker API — outbound delivery for LP-fronted sites. The supplier identity (e.g. 111792 for Popular Marketing) is per-account; per-site campaign IDs live in funnel.yaml.

Company Intel

Run full cycle

Identity → Intel → Risk in sequence. Kill-gates implicit (each stage skips unresolved profiles).

Identity resolution

Resolve canonical entity (company website) for each profile via a focused Perplexity call. Cheap and fast. Profiles that resolve cleanly become eligible for Intel + Risk enrichment; ambiguous / not-found profiles surface in the operator review queue. Re-running by default skips already-resolved profiles.

Intel enrichment (structured claims)

Build the structured-claims graph for each profile with a resolved canonical website. Per-claim citations required; confidence is derived from the source-authority registry, not the model's self-rating. Skips profiles whose identity isn't yet resolved (kill-gate). Re-running by default skips profiles that already have claims.

Risk scan (lawsuits, regulatory, layoffs, departures, negative press — last 24 months)

Scan each resolved-identity profile for actionable risk signals from the last 24 months. Severity-tagged so Draper rules can prioritize. Empty findings are stored as "scanned, found nothing" — a useful affirmative result, distinct from "haven't checked." Default skips profiles scanned in the last 7 days.

Bulk approve / reject pending review

Mass approve or reject the pending queue for a stage. Approve = promote pending_* → live entity_uri / claims / risk_signals (writes a history row per profile). Reject = clear the pending columns. After a large backfill this clears 1,000+ rows in a single workflow run instead of one click per profile.

Loading pending counts…

Recent runs

Loading runs…

Edit analytics

Tracks operator approve/edit/reject behavior on AI-derived claims. The signal we want: average AI confidence at the time of operator edits should be LOWER than at approves — that means AI is honest about uncertainty, and operators are catching the genuinely-uncertain claims.

Loading analytics…

Classifier

Replay diff (v1 vs v2)

Runs the legacy v1 classifier and the Phase 7γ v2 stack over the same buyer/window through the back-testing harness. Returns a date-aligned, side-by-side event diff so you can spot regressions or new detections before flipping the production default. Source = R2 (Parquet corpus, full history) or D1 (recent ~31-day rollup cache).

Geo Signal Audit

Is geo a high-fidelity signal?

Geo ingest is throttled (economic). This scans the historical offer×region corpus for cases where the per-region view caught something the offer-level view hid — a single region driving an offer's swing (concentration), regions trading places (rotation), revenue fragile to one region (concentration risk), or a region's move leading the offer's. It returns worked comps with $ impact and a fidelity score, or an honest “no — the throttle is justified.” Use it to decide whether geo earns closer-to-real-time ingest.

Webhooks

Loading integrations...

Fraud & Verification

Third-party services that validate each lead before delivery. Pick a fail mode for every active service — fail-open lets leads through and flags them as unverified if the vendor is down; fail-closed rejects leads until the vendor recovers.

Native click-fraud threshold

The score at which a native (non-Everflow) click is counted as invalid in the rollup metrics. Matches the existing fraud-engine reject boundary at 50. Until this is set, the dashboard's Inv. Clicks column reports 0 for native traffic — that's not configured, not measured zero.

not configured

Everflow rejection-rate line

Everflow rejects ("invalidates") clicks for caps, geo/device targeting, partner approval, IP/suppression blocks, or quality — mostly business rules, not fraud. This sets the rejection RATE above which Draper flags a source as worth a look. It is a quality tolerance, not a fraud line. For true fraud, run an invalid-click reason sample (below) to see the Forensiq/Anura/proxy share.

Loading your current rejection rate…
default (10%)

Invalid-click reason sample

Pull a sample (up to 1,000 clicks) of Everflow's rejected clicks for the last 7 days and classify WHY — the genuine-fraud share (Forensiq/ Anura/proxy/IP blocks) vs business rules. Sample estimate.

Loading verification services...

Recent health events (last hour)

No recent activity.

Security Status

Loading security status...

Branding

Customize how the admin interface looks for your team. Changes apply on next page load.

Images

PNG, SVG, or WebP (max 200KB)
PNG, SVG, or ICO (max 50KB)

Colors

Header & dark surfaces
Buttons & highlights
Labels & body text

Navigation Labels

Leave blank to use defaults.

Accounting — Overhead Lines

Log platform subscriptions, vendor services, banking fees, insurance, and tax that don't tie to a specific lead or conversion. Each line pro-rates daily into your COGS so Draper's Net Margin reflects the true cost of running the business.

Loading…

Support

Report an Issue

Loading issues...

API Reference

Loading API documentation...

Draper Monitoring

Notification Settings

to

Materiality floors

Don't fire alerts on changes below these floors per day. A 1-lead drop or $0.57 revenue drop isn't business-relevant; an actual material move is. Set the floor at the smallest move this account considers worth knowing about. Leave blank to use the platform default.

Metric Floor Platform default
Lead volume / day10 leads
Conversions / day10 conversions
Revenue / day
$
$500

Tier ladder: move < floor = ignored. move ≥ floor + statistically anomalous = watch list. move ≥ 5× floor = urgent regardless of percent change (large absolute swings always surface).

Recommendation Rules

Rule Description Enabled Threshold

System Overview

Messages

--

Avg Latency

--

RAG Hit Rate

--

Active Users

--

Blocked

--

Cron Runs

--

AI Cost

--

Registered Users

Loading users...

Activity Log

Loading activity log...

Cron Run History

Loading cron history...

Acknowledgment History

Loading acknowledgments...

Preflight intent extraction

Routes each operator question through an LLM that classifies intent and stages a structured envelope BEFORE specialists run. When disabled, Draper falls back to the legacy regex router. Settings here are per-account.

Security & Rate Limiting

Loading security info...

Data Plane

Single tenant-scoped snapshot of which Operating Intelligence detectors are firing. A detector showing unknown has never written a row for this account. Red means the detector fired before but stopped. Green means it is firing within its expected cadence.
Tier 0 historical backfill

Imports the trailing 13 months of Everflow daily data from the Parquet archive into the D1 hot tier. Real-time queries — year-over-year comparisons, last-N-month seasonality — can answer instantly once this completes. The job runs in the background; you can close this tab and check back later.

Detectors

Loading detector health…

Recent cron summaries

Loading recent cron runs…

Cost-invariant drift

Difference between SUM(rollup_daily.total_cost_cents) and SUM(rollup_daily_costs.amount_cents) over a rolling 7d window per account. Threshold: $0.50. Drift above threshold lands here as an alert; acknowledge once reviewed.
Loading drift alerts…

Click-rollup drift

Difference between SUM(rollup_daily.gross_clicks) (what Marketing Intelligence shows) and COUNT(*) of click_sessions (the source of truth) over a rolling 3-day window per site. Threshold: 15% gap on sites with 50+ clicks. A divergence above threshold means the rollup is mis-counting — it lands here so a silent undercount can't hide.
Loading click-drift alerts…

Timezone-provenance drift

Each rollup row records the timezone it was bucketed under. This flags any day where the daily total's timezone disagrees with the hourly rows it was built from — the fingerprint of an account-timezone change landing mid-day, between the hourly write and the nightly roll-up. The numbers for that day may mix two calendar-day definitions. Advisory: review the day, then acknowledge. Re-bucketing the affected day is a manual decision, not automatic.
Loading timezone-provenance alerts…

Everflow aggregates vs export drift

Difference between Everflow's reporting aggregates (rollup_daily EF rows — what the dashboards show) and its per-conversion export (everflow_raw_conversions — what per-lead settlement uses), per closed day in your timezone. A measured gap is normal (the two pipelines count differently and restate on different schedules); an alert means the gap exceeded the documented envelope — over 10% on revenue or 25% on conversions, on days with 50+ exported conversions. Review the day in Everflow, then acknowledge.
Loading Everflow source-drift alerts…

Stats Engine

Read-only view of the forecasting / anomaly engine. It shows what each layer is meant to produce, whether the layer is built, wired into the live pipeline, and actually producing output — plus how much real distributional ground-truth has been learned so far. Nothing here changes engine behavior; it's the window for verifying every later improvement.

Coverage — how much normal has been learned

Loading coverage…

Layers — built vs wired vs producing

Loading layer inventory…

Who reads each output

Loading consumption map…

Parallel noise stream (retired in a later step)

The digest you see today is generated by an older parallel system, not by this engine. Its footprint is shown here so you can see exactly how much of the current noise it accounts for. It gets switched off once the real engine is producing grounded events.
Loading…

Compliance Overview

Your responsibility: This platform detects potential compliance and accessibility issues using AI review, but does not guarantee regulatory compliance. You are responsible for ensuring all published content meets applicable legal requirements. Override flags at your discretion — overrides are logged for your records. Consult qualified counsel for your specific situation.

Privacy & Consent

How your live sites handle consent and consent-verification services. We always honor Global Privacy Control and always send TrustedForm + Jornaya certificates with each lead. The IDs below are only needed if you subscribe to those services and want to view/query the certificates on their side.

We always honor Global Privacy Control signals — it's legally required in several states, so this can't be turned off.

Loading compliance data...

Scheduled Email Reports

Receive automated performance digests by email. Daily reports cover yesterday's metrics; weekly reports cover the last 7 days.

Loading report schedules...

New Report Schedule

Partner Applications

Loading...

Inbound Postback Monitor

Raw log of partner postbacks (Everflow, LeadProsper, …) hitting /api/postback/<partner>. Revenue-relevant writes (click_sessions.converted_at, lead_costs) are gated by sites.config.postback.trust_writes — default OFF until match logic is calibrated against real payloads (see Phase C plan §6 decision B / §5.5 of the spec).

Loading 7-day stats…
Loading events…

Async Tasks

Long-running background work — Parquet → D1 bootstraps, multi-year seasonality reads, pooled-stats refreshes, Set D detector runs. Tasks marked running update every minute via the cron drainer; the watchdog auto-cancels anything stalled past its per-kind ceiling (default 10 min between checkpoints). Cancelling a running task takes effect at the next checkpoint boundary.

In flight

Loading running tasks…

Recent (last 24h)

Loading recent tasks…

Preflight Intent — Model Scorecard

Bake-off scorecard for the preflight LLM. Scores candidate models against a corpus of real operator phrasings mined from draper_log. The model that wins here gets configured as the production preflight slot (per Phase 013 §16-Q1 — "don't pick, test").

Loading last report…
Runs the full corpus against the default 8-candidate set (Llama 4 Scout, Llama 3.3 70B, Qwen 2.5 Coder, DeepSeek R1 Distill, Qwen 3 30B, QwQ 32B, Mistral Small 3.1, Gemma 3 12B). ≤3 candidates runs sync (~12s); >3 enqueues as a worker_tasks job (~3-5 min) — page polls automatically and refreshes when done.
No report yet.

Preflight Probe — Inspect One Question

Type a question. The probe runs it through preflight (B3) + the per-mode handler (B5/B6) and shows what the orchestrator would do — without dispatching specialists, writing telemetry, or sending Telegram. Use this to sanity-check preflight behavior before flipping the production feature flag.

No side effects. Cmd/Ctrl+Enter to run.
Result will appear here.

Preflight Telemetry — Rolling Window

Aggregates over draper_preflight_envelopes + draper_preflight_outcomes + draper_learning_candidates. Window is rolling N days ending now (UTC). Empty when preflight is disabled for this account or no traffic yet.

Loading telemetry…