Lead Capture → Enrich → Segment → CRM

A done-for-you TinyCommand recipe that captures leads, enriches company + person from email, scores ICP, syncs to your CRM, and sends a confirmation email end to end.

Growth
Lead Automation

What you'll build

This recipe spans multiple TinyCommand utilities and ships as a bundle of workflows + data models.
  • TinyForm: Lead capture form.
  • Workflow: Trigger on submit → normalize email → extract domain → conditional company enrichment → person enrichment → ICP scoring → CRM sync → confirmation email → optional Slack alert.
  • TinyTables: companies, contacts, leads (pre-modeled).
  • Email: TinyEmail templates (confirmation + internal alert).
  • CRM: HubSpot mapping (works similarly with Zoho/Salesforce).

How it works

  • Form submit (TinyForm)
    User fills full_name, email, optional company, use_case, team_size. UTM params captured via hidden fields.
  • Normalize & extract
    Lowercase the email, trim whitespace, and extract the domain. Detect personal emails (e.g., gmail.com) and branch logic accordingly.
  • Company Enrichment (conditional)
    If domain is corporate, call Company Enricher (TinyTables) to fetch company profile (name, employees, revenue range, industry, tech stack, HQ, website, LinkedIn). Upsert into companies by domain.
  • Person Enrichment
    Use Person Enricher on email (and full_name if available). Upsert into contacts by email.
  • Create Lead row
    Insert into leads with normalized identifiers, UTM metadata, and raw form payload.
  • ICP Scoring & Segmentation
    Apply rules (industry, size, tech stack, intent keywords, personal email penalty) → produce icp_score and segment (ICP-A/B/Non-ICP). Update leads.
Heading

Key features

  • Multi-workflow bundle: purpose-built chain from form to CRM.
  • Dual enrichment: company + person from a single email.
  • ICP scoring out of the box: tuned rules you can edit.
  • CRM-ready mappings: HubSpot defaults, easily remapped.
  • Idempotent + observability hooks: prevent dupes, track outcomes.

Example Use Cases

  • Multi-workflow bundle: purpose-built chain from form to CRM.
  • Dual enrichment: company + person from a single email.
  • ICP scoring out of the box: tuned rules you can edit.
  • CRM-ready mappings: HubSpot defaults, easily remapped.
  • Idempotent + observability hooks: prevent dupes, track outcomes.

Prerequisites

Required:

  • .TinyForm enabled
  • TinyTables (auto-create these on install): companies, contacts, leads.
Integrations:

  • Email via TinyEmail (or SMTP).
  • CRM (HubSpot example mapping included).
  • Enrichers: Company Enricher + Person Enricher toggled on.


What's included (Bundle)

Workflows:

  • Lead Intake (trigger: Form submit).
  • Enrichment & Scoring (branch + rules).
  • CRM Sync (find/create company & contact, lifecycle/props).
  • Messaging (confirmation email; optional Slack/TinyEmail alert).
Data Models (TinyTables):

  • companies: domain, name, website, employees, revenue_range, industry, linkedin_url, technologies, location, enrichment_source, enrichment_at
  • contacts: email, first_name, last_name, full_name, title, linkedin_url, phone, company_domain, enrichment_source, enrichment_at
  • leads: email, company_domain, utm, form_payload, crm_contact_id, crm_company_id, icp_score, segment, status, created_at, updated_at
Email Templates (TinyEmail):

  • Confirmation: "You\'re in—next steps for Example Company"
  • Internal Alert: Fired when icp_score ≥ 65

Field mapping

Mapping of the fields required
Domain
Email
First Name
Industry
Last Name
Name
Number of employees
Website

Scoring rules

Domain
Email
First Name
Industry
Last Name
Name
Number of employees
Website

Setup

  • Install recipe and connect integrations (TinyEmail + CRM).
  • Deploy the form (inline or popup) and add UTM hidden fields.
  • Edit scoring rules (optional).
  • Map CRM fields (keep defaults or remap).
  • Send test submissions (corp email + personal email) and review logs.

Test Plan

  • Corporate email path: company + person enrichment, CRM upserts, confirmation sent, optional alert if ICP-A.
  • Personal email path: person enrichment only, nurture enrollment.
  • Duplicate submission: no duplicate rows; CRM contact updated.
  • Rate-limit simulation: retries with backoff; idempotency keys respected.

Observability & Fail-safes

  • Idempotency: use submission_id across all writes.
  • Retries: Enrichment (max 3, exp backoff); CRM (respect Retry-After).
  • Dead-letter: lead_errors TinyTable with payload + error + retry_count.

Frequently Asked Questions

Can I use Zoho or Salesforce instead of HubSpot?
  • Can I use Zoho or Salesforce instead of HubSpot
    Yes—keep the same workflow; update the CRM nodes and field mappings.
  • What about free email domains?
    We enrich the person, skip company enrichment by default, and route to nurture.
  • How do I change ICP logic?
    Edit the scoring rules node (YAML-like form) or attach your own rule engine.

Notes

  • Works great as the first step to a PLG funnel—pair with nurture sequences.
  • For advanced intent, add "visited pricing/templates page" to the scoring.
  • Use Slack alerts sparingly; only for ICP-A to avoid noise.