Verification research
Lead Generation Technology: What the Evidence Changes
2026-08-19 · Julian Hartwell
Lead generation technology should be organized around decision ownership, because more connected tools can otherwise create more unowned leads. Map every technology to the decision it supports, the record it changes, the owner who reviews it, and the exception path when data conflicts.
Organize technology around decisions
A lead-generation technology stack needs a system-of-record decision before it needs more tools. In my reference map, capture systems store response events, prospecting tools propose accounts, enrichment adds attributed fields, the CRM owns canonical company and person records, engagement tools execute approved actions, and analytics reads timestamped stage events. The CRM does not have to perform every job, but one location must own the accepted identity, status, owner, and suppression state. Without that rule, every application can be “correct” while the business record remains contradictory.
- Capture: event, submitted fields, source, and notice context.
- Prospecting: selection reason, evidence, date, and unresolved facts.
- CRM: canonical identity, owner, status, and suppression state.
- Engagement and analytics: approved action plus immutable event history.
The decision map precedes the stack
A vendor diagram cannot decide these ownership rules. General SBA marketing guidance and target-market resources help define business requirements; they do not validate a particular software architecture. In my architecture note, I also list the fields that must never be silently downgraded: suppression, confirmed identity, manually reviewed company type, and current owner. I ask every connector what it does when its source is older or less authoritative. I prefer an explicit conflict queue to a last-write-wins rule. When I cannot see precedence, I treat the integration as unsafe for direct writes and limit it to proposals until the team can test reversal.
Assign every tool a bounded job
I test the map with a conflict case. “Acme Industrial Ltd” enters from a conference form, while a prospecting tool creates “Acme Industries” from a company website. Enrichment attaches a US address to the first record and a UK address to the second. The resolution process compares domains, legal names, locations, and source dates. If they are different entities, the records remain separate. If they are the same, the CRM merges them under a stable ID, preserves both origins, selects each field by a written precedence rule, and retains the losing values in history.
- Match on multiple identifiers; never merge on company name alone.
- Prefer current first-party evidence for identity fields when available.
- Retain source, date, and prior value for every resolved conflict.
- Invalidate dependent contacts when the company identity changes.
What the authoritative record must retain
This is a data-governance decision, not an enrichment contest. A field with more confidence language does not outrank a field with better provenance. I run the Acme merge twice: once as a genuine duplicate and once as two separate companies. I check whether I can undo the merge, restore relationships, and identify downstream drafts that used the wrong record. I also check what happens when I correct only the country. This exercise shows whether the stack understands dependencies or merely copies fields. My notes distinguish observed behavior from assumptions about how the connector should work.
Resolve identity and data conflict
Give each technology a bounded job and an explicit write permission. A discovery tool may create candidate accounts in a review queue but not overwrite accepted CRM fields. An enrichment service may propose a title with source and date but not clear a suppression state. A drafting system may read approved claims but not invent a customer fact. NIST AI RMF can inform risk controls where AI is involved; it does not establish that a vendor’s output is accurate or compliant.
- Read permission: which canonical fields the tool may use.
- Propose permission: which fields it may submit for review.
- Write permission: which accepted fields it may change directly.
- Execute permission: which external actions require human approval.
Conflicts need an explicit route
I document failure behavior as carefully as the happy path. When a connector fails, the stack should queue a retriable event or show an unresolved state rather than silently dropping ownership or creating a second record. I evaluate the [OKKI Go platform](https://go.okki.ai/) with the same map. I ask where candidate accounts live, what becomes canonical, what requires confirmation, and which event is written after outreach. I do not infer those details from marketing language when a controlled trial can answer them. I record configuration, test data, and date so another reviewer can reproduce my conclusion rather than rely on my memory.
Reject feature-coverage architecture
Evaluate products through a scenario, not a feature-count matrix. Use the Acme case to test duplicate handling, provenance, reversibility, permissions, and export of history. Then test a suppressed contact, an expired role, and an unsupported personalization claim. OKKI Go product and use-case pages can help identify prospecting workflows to examine, but the published descriptions are not evidence of your data coverage, match rate, integration behavior, or campaign performance. Those require a controlled trial with your records.
- Can the reviewer see source and observation date at field level?
- Can a proposed change be accepted, returned, or reversed?
- Does suppression survive merge, sync, and re-enrichment?
- Can administrators stop external actions while preserving history?
Integration is not ownership
A procurement decision should state which scenario passed, what remained untested, and which evidence came only from vendor material. This keeps capability claims inside their proper boundary. I challenge each automation with a question: what if this field is wrong, stale, or attached to the wrong entity? I want a returned state, an owner, and a reversible write. I also ask what happens during an outage and after retry. If the same event can be applied twice, I need idempotency or duplicate detection. These are operating requirements, not secondary implementation trivia, because they determine whether the CRM history remains trustworthy.
Review the stack through ownership
The operating review follows changes across the whole map. I sample newly created, merged, returned, and suppressed records; compare application logs with CRM history; and trace any mismatch back to a permission or precedence rule. If duplicates rise after a connector change, pause that write path. If stale roles repeatedly overwrite reviewed data, reduce enrichment permission to “propose.” If analytics misses returned states, fix the event contract before relying on funnel rates.
- Sample by state transition, not only by successful records.
- Reconcile source application, CRM history, and downstream event.
- Assign every recurring conflict to a field owner.
- Change one permission or precedence rule, then retest the scenario.
A technology checkpoint with a person
Technology creates leverage only when ownership and correction remain legible. The most useful stack is not the one with the longest feature list; it is the one that lets the team explain what changed, why it changed, and how to reverse a bad decision. I use [OKKI Go use cases](https://go.okki.ai/use-cases) as vendor-supplied scenario material and label it accordingly. I then reproduce only the relevant scenario with my permissions and records. I ask what succeeded, what failed, and what I never tested. By preserving those boundaries, I can recommend a tool for a bounded job without turning a product description into a broad claim about data quality or sales performance.
Organize lead-generation technology around decision ownership. A system of record and a merge-undo path matter more than a longer tool list.
Frequently asked questions
What should be chosen before any lead-generation tool?
The system of record, the last-write-wins rule, and who can undo a merge. Stack diagrams without those ownership rules create unowned leads.
Why do connected tools still lose lead history?
Because merge, overwrite, and sync jobs can erase source and owner without an undo path. Integration is not the same as reconstructable history.
How should a CRM merge be treated in a lead stack?
As a high-risk write. Require a reviewable merge preview and a way to restore the losing record’s source and status.
When is another integration the wrong next step?
When duplicate ownership or last-write-wins is still undefined. Another pipe then multiplies silent overwrites.
