KOD
← Back to hub
DRAFTA working draft — not yet checked against reality by a person. Read it, but confirm before you rely on it.

Lead Enrichment + Badge Grading

Grade detail — how a lead is scored and bucketed gold / silver / bronze. · tap to zoom & pan

PURPOSE

Turn a bare address into a fully enriched, correctly graded working lead — owner name, phones, equity percent, interest rate — and sort it into the gold/silver/bronze bucket that decides how hard and how often you chase it. Grading is what keeps a solo operator or a small team from burning equal effort on a $400K-equity gold lead and a thin, cold one.

WHEN TO USE

Daily, right after the morning scrape pass (see sop-kod-lead-intake-scrape), and any time a re-scrape changes a case's status in a way that should re-trigger grading.

PREREQUISITES

  • New addresses already pushed into DealMachine from the intake/scrape step (DealMachine's API only ADDS a lead — it does not enrich or trigger skip trace on its own).
  • DealMachine account logged in on the bot's saved session (scraper/dm-bot/dm-profile/), or manual web access if running the export by hand.
  • Familiarity with the equity/rate fields this step depends on: equity% and interest rate from the Properties export, and phones/owner names/DNC/ litigator flags from the Contacts export.

STEPS

  1. Confirm the DealMachine import ran for today's new addresses (skip trace is triggered as part of the same DealMachine bot pass that imports the leads — no separate manual skip-trace click is needed if the bot ran).
  2. Run the DealMachine web Properties export. On the Leads screen: Select All → Lead Actions → type "export" in Search Actions → Export Leads → choose export type Properties → toggle "Include leads without phone numbers" ON (so every property's equity and rate come through, not just ones with a phone) → Scrub DNC OFF, Scrub Landline ON, Scrub Wireless OFF → Submit Export. This file carries equity_percent, mtg1_interest_rate, loan balance, and ARV/value — the numbers that drive grading and the subto decision.
  3. Run the DealMachine web Contacts export, same Select All → Lead Actions → Export path, export type Contacts → check Likely Property Owners, Potential Property Owners, and Family Members (leave Contacts Likely Renting unchecked) → Scrub DNC OFF (Jason keeps DNC numbers), Scrub Landline ON, Scrub Wireless OFF → Submit Export. This file carries phones, real owner names, and do-not-call/litigator flags.
  4. Download both files — wait for either the direct download or, if DealMachine emails the export instead of offering an in-app download, retrieve the CSV from the export inbox / DealMachine downloads page rather than assuming the pass succeeded silently.
  5. Import both CSVs. POST each file to the KOD ingest import endpoint; the route auto-detects contacts vs. properties from the file shape.
  6. Merge into enrichLead: phones, owner name, and equity percent land on the lead record. A contact flagged litigator is suppressed entirely (never contacted). A contact flagged DNC is kept but labeled — DNC alone is never a reason to delete a lead, only litigator flags are.
  7. Score the lead and assign its bucket using equity percent (and interest rate for the subto path):
    • Gold — high equity (roughly $100K+ in dollar terms, the sharpened floor) or an auction date that's very soon. Work these first; reach out up to twice a day.
    • Silver — decent equity with some runway left on the timeline. Touch every 2-3 days across call, text, and door.
    • Bronze — thin equity or a long way out on the timeline. Slow email/mail drip only — never manually chase a bronze lead.
    • Cold — under roughly 30% equity with no subto angle. Keep it in the database for the record, but it stays off the active working list.
    • Subto exception — a thin or negative-equity lead is NOT automatically cold if it carries a low, assumable interest rate; that's a subject-to play and gets kept and worked, just tagged clearly as subto so a rep understands why a low-equity door is worth knocking.
    • As a hard floor regardless of bucket, do not seriously consider a deal with less than roughly 50-60% equity unless a negotiable junior lien or judgment is present and flagged as an exception.
  8. Enroll the lead in the matching cadence once it's bucketed: gold = twice a day, silver = every 2-3 days, bronze = slow drip only. This step is what actually puts the lead into the outreach rotation — grading without cadence enrollment means nothing happens.
  9. Confirm the Discord alert fired for anything new or anything that landed in gold, and for any status change coming out of the scrape step.

VERIFICATION

  • Every newly imported address has an equity percent and, where available, an interest rate on the record — a lead with neither field populated did not actually enrich and needs a re-check.
  • Every enriched lead has exactly one bucket assigned (gold/silver/bronze/ cold), and every gold/silver lead is enrolled in its matching cadence.
  • Litigator-flagged contacts are suppressed; DNC-flagged contacts are kept and labeled, never silently dropped.
  • A thin or negative-equity lead with a low interest rate is labeled subto, not miscategorized as cold and dropped.
  • Owner last names backfilled correctly on the Properties side (a common failure mode when the export silently goes to email instead of a direct download).

TROUBLESHOOTING

  • Properties export produced a suspiciously small file, or owner last-names are missing across a batch. DealMachine sometimes emails the export instead of offering an in-app download; check the export inbox or downloads page for the real file rather than assuming the pass completed. Re-run the export and confirm a genuine download event before trusting the import.
  • A lead looks graded wrong (e.g. a clearly high-equity property landed in silver, or a thin-equity property is missing its subto tag). Re-check the raw equity percent and interest rate from the latest Properties export first — grading is only as good as the export data underneath it.
  • A lead you expected to see enriched never got phones or an owner name. Confirm the Contacts export actually ran and imported (not just Properties) — the two exports carry different fields and both are required for full enrichment.
  • Comps/ARV needed for an offer are missing or feel stale. Enrichment gives you equity and rate, not a fresh valuation — pull area comps separately before making an offer rather than relying solely on the DealMachine ARV/value field.

Linked resources

No linked Google Doc or Sheet yet — these are generated when this SOP is pushed to Google (npm run push-to-google).