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...

Data Visibility

Control which data categories each role can reach when they ask Draper. Unchecking a box means that role gets an honest "not in your access" reply for questions needing that category — never a silent gap. Defaults match today's reality (everyone sees everything except team conversations and platform admin data).

Loading…

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...

Media Buyers

The daily to-do roster. Adding a buyer here is a data change, not code. The brief is currently a global book — everyone on this roster gets the whole real-activity book, so offer scope isn't used right now (it's tucked away per row for a future per-buyer carve-up). Set how each buyer receives it (channels), pause/resume delivery, or Preview / Send now a one-off — all in this table. Email is sent from Claude's connector (not from here) — the address is only recorded for that fast-follow.

Loading media buyers…

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 Retrieval

--
% of reasoning turns the knowledge base matched (retrieved, not necessarily cited)

Active Users

--

Blocked

--

Cron Runs

--

AI Cost

--

Pending pairings

Teammates who messaged Draper but aren't approved yet. Approve to grant access — they'll get a welcome message and can start asking right away.
Loading…

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…

Alert feedback — teach the engine which alerts matter

Mark recent alerts useful (you acted on it) or not useful. The engine can’t learn which alert types are worth firing from silence — your feedback is what lets it self-suppress the noisy ones and promote the valuable ones. Scored overnight.
Loading alert feedback…

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...

Explorer — Finding Archive & QA

Every "Worth a look" note the background explorer has produced — surfaced, shadow, or overflow — with its receipts trail, the skeptic's surviving caveats, and how the team rated it (👍/👎). Read-only. Surfacing stays OFF by default; this is the review window that decides whether an account is ready to flip live.

No findings loaded yet.

What the explorer chased

Every question the nightly explorer picked up in the same window — including the ones that died — with an honest account of how each ended. A night with zero findings still shows its work here: what it asked, what the data said, and why nothing survived.

Not loaded yet.

World Events — Shadow Review

Real-world events (a storm, a health advisory, a ruling) that could spike demand in your live verticals — surfaced early so you can act instead of react. This is shadow mode: nothing here is pushed to staff. Review what the detector would surface, judge whether it's useful, then decide whether to turn it on for real.

Loading…
A scan asks the model for recent events in your live verticals (~$0.005, a few seconds).
Loading…

Signals — Shadow Decisions

During the shadow fortnight, every signal delivery also records what the surface gates would have done if they were live — interrupt you, fold into the morning digest, wait for the next day, or stay silent — with the reasons. This is the read for the arm/don't-arm decision: nothing here changed what was actually sent.

Loading…

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…

Claude Connector

Who has connected their Claude to Draper, what it's being asked, and anything failing or refused — the flywheel feed (Phase 208). Every number below covers the labeled window; a ⚠ row means the platform couldn't check, not "nothing happened".

Loading…

Connected people

Usage by person

Usage by capability

Recent activity (latest 20 — errors and refusals included by design)

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…

Draper AI Usage

AI usage per Telegram user — calls, tokens, latency, and an estimated cost. Estimate is from a local price map; the AI Gateway has the exact billed cost.

Loading usage…