Grand Diomande Research · Full HTML Reader

Miami Openings Radar Protocol

Purpose: maintain an adaptive feed of newly opening Miami food, cafe, market, and hospitality businesses that are worth Koatji outreach.

Protocol and Compute research note experiment writeup candidate score 26 .md

Full Public Reader

Miami Openings Radar Protocol

Purpose: maintain an adaptive feed of newly opening Miami food, cafe, market, and hospitality businesses that are worth Koatji outreach.

This is not a single-source scrape. New openings are noisy. One signal means "maybe." Two independent signals means "watch." Three aligned signals means "work this lead."

Operating Thesis

The best Koatji moment is before a shop has locked its beverage program.

The radar should catch prospects at four stages:

1. Buildout - permit, construction, certificate, plan review, or business registration activity.
2. Pre-open - "coming soon," hiring, menu testing, buildout photos, soft-opening language.
3. Soft open - limited hours, first posts, Resy/OpenTable listings, local coverage.
4. Newly open - media coverage, first reviews, active menu, ready for outreach or visit.

The protocol should avoid chasing every restaurant. It should prioritize shops where Koatji has a realistic product fit: specialty coffee, matcha, bakery cafes, health-forward restaurants, upscale markets, juice/wellness, coworking cafes, hospitality groups, and design-forward neighborhood concepts.

Source Tiers

Tier 0 - Official Early Signals

These are the earliest but least human-readable signals.

SourceUseFeed Behavior
Miami-Dade Local Business Tax GISDetect new or renewed business entities, business start dates, categories, NAICS, address, phone, emailDaily query, diff against prior snapshot
City of Miami Data Explorer / Building PermitsDetect restaurant/cafe buildouts, improvements, tenant changes, commercial food-service workDaily or 3x weekly query
City of Miami Business Licensing / Certificate of UseConfirm business legality and final opening readinessWeekly/manual until API path is stable
Miami Beach Civic AccessPermits, BTR, CU, fire inspection, planning/code compliance for Miami BeachWeekly/manual or portal-monitor
Miami-Dade Certificate of Occupancy / Certificate of UseDetect change-of-use or occupancy readinessWeekly/manual for high-score candidates

Important source notes:

  • Miami-Dade's Local Business Tax ArcGIS layer exposes useful fields including `BUSSDATE`, `NEWBUS`, `BUSNAME`, `BUSADDR`, `BUSCITY`, `CLASSDESC`, `CATGRYNAME`, `OCCDESC`, `BUSNAICSCD`, `PHONENO`, `EMAIL`, `LAT`, and `LON`.
  • City of Miami's public Data Explorer includes building permit open data and business licensing resources.
  • Miami Beach Civic Access is the live service portal for permits, planning, business tax receipts, and code compliance.

Tier 1 - Market-Ready Signals

These are less early, but much better for sales timing.

SourceUseFeed Behavior
Eater Miami OpeningsRestaurants that are visible enough for public attentionWeekly scrape/check
The Infatuation Miami New OpeningsStrong signal for trendy, design-forward, food-focused openingsWeekly scrape/check
Resy / OpenTable new listingsDetect restaurants taking reservations before broad coverageWeekly check
Miami New Times food openingsLocal editorial coverage and "coming soon" itemsWeekly check
Yelp / Google Maps "new" listingsConfirm status, address, phone, hours2x weekly enrichment

Tier 2 - Social Confirmation

This layer determines whether a lead is alive and whether the brand feels like Koatji.

Watch for:

  • Instagram bio: `coming soon`, `soft opening`, `now open`, `grand opening`, `opening soon`
  • Posts showing buildout, staff hiring, training, drink testing, first service, friends-and-family night
  • Menu images with matcha, espresso, latte, chai, smoothies, wellness drinks, bakery, breakfast
  • Tags from known Miami operators, designers, chefs, baristas, hospitality groups
  • Follower/comment quality, not just follower count

Tier 3 - Human Verification

Human verification is required before outreach unless the lead comes from a trusted warm source.

Minimum verification:

  • Business is real and local.
  • Address is not a home office, warehouse-only address, or corporate back office.
  • The business has an actual consumer-facing food/beverage use case.
  • Contact route exists: email, website form, Instagram DM, phone, or visit.
  • No obvious anti-ICP signal.

Lead States

StateMeaningNext Action
`raw_signal`One source saw somethingWait for second signal or enrich
`watch`Plausible opening, not enough proofCheck Instagram, Google Maps, permits
`verify`Good enough to inspect manuallyHuman confirms fit and contact path
`outreach_ready`Verified, contactable, ICP score above thresholdSend email, DM, call, or visit
`route_ready`Worth in-person drop-byAdd to Miami route list
`contacted`Outreach happenedTrack response/follow-up
`sample_candidate`Positive response or high-priority visit targetPrep sample/drop
`customer`ConvertedMove to active account
`nurture`Not ready, but worth revisitingRecheck in 30/60/90 days
`skip`Not a fitStore reason, suppress duplicates

Feed Output

Every run should produce four views.

1. Fresh Radar

New candidates discovered in the last 7 days.

Columns:

  • `discovered_at`
  • `business_name`
  • `address`
  • `city`
  • `source_count`
  • `opening_stage`
  • `opening_confidence`
  • `icp_score`
  • `outreach_priority`
  • `recommended_action`

2. Outreach Ready

Verified leads where the next action is clear.

Columns:

  • `business_name`
  • `contact_method`
  • `decision_maker`
  • `why_now`
  • `why_koatji`
  • `opening_stage`
  • `recommended_channel`
  • `owner`
  • `due_date`

3. Route Ready

Leads worth visiting physically.

Columns:

  • `business_name`
  • `address`
  • `neighborhood`
  • `hours`
  • `stage`
  • `drop_reason`
  • `sample_needed`
  • `notes`

4. Watchlist

Strong but premature leads.

Columns:

  • `business_name`
  • `latest_signal`
  • `missing_signal`
  • `next_check_date`
  • `watch_reason`

Canonical Lead Schema

Use this schema for CSV, SQLite, Supabase, or dashboard ingestion.

FieldTypeMeaning
`radar_id`textStable hash of normalized name + address
`business_name`textCurrent public name
`legal_name`textRegistered owner/entity if available
`address`textPhysical address
`city`textMiami, Miami Beach, Coral Gables, etc.
`neighborhood`textWynwood, Brickell, Coconut Grove, Design District, etc.
`lat` / `lon`numberCoordinates
`category`textcafe, restaurant, bakery, market, juice, wellness, hospitality group
`opening_stage`enumbuildout, pre_open, soft_open, newly_open, unknown
`first_seen_at`dateFirst radar detection
`last_seen_at`dateMost recent signal
`source_count`integerCount of independent source families
`source_urls`jsonLinks and source labels
`official_signal`booleanPermit, LBT, CU, BTR, DBPR, etc.
`social_signal`booleanInstagram/social activity confirms life
`media_signal`booleanEater, Infatuation, Resy, New Times, etc.
`maps_signal`booleanGoogle/Yelp/Maps confirms listing/hours
`contact_email`textEmail
`phone`textPhone
`instagram`textIG handle
`website`textWebsite
`decision_maker`textOwner, GM, chef, beverage lead
`icp_score`number0-100
`opening_confidence`number0-100
`outreach_priority`enumP0, P1, P2, P3
`recommended_action`textverify, email, DM, call, visit, hold
`status`enumraw_signal, watch, verify, outreach_ready, route_ready, contacted, sample_candidate, customer, nurture, skip
`skip_reason`textIf skipped
`owner`textMo, Kevin, Carson, unassigned
`next_check_date`dateFollow-up date

Scoring Model

Total score is 0-100.

A. Opening Timing Score, 0-25

  • 25: soft-open or opening-week signal
  • 22: active "coming soon" with staff/menu/buildout content
  • 18: BTR/LBT/CU/new business signal within 60 days
  • 12: permit/buildout signal, likely food/beverage but no social confirmation
  • 5: vague rumor or old listing

B. ICP Fit Score, 0-30

Use the existing Koatji ICP standard.

  • +8 specialty coffee, matcha, espresso, tea, bakery cafe, or wellness drinks
  • +6 design-forward or premium brand
  • +5 menu uses milk daily: latte, matcha, chai, smoothies, breakfast, pastry
  • +4 health-forward, plant-based, organic, craft, local
  • +4 1-5 locations or credible operator group
  • +3 social feed has strong visual/aesthetic signal

C. Contactability Score, 0-15

  • +6 direct email found
  • +4 Instagram active and DM-friendly
  • +3 phone found
  • +2 decision-maker name found

D. Route Leverage Score, 0-10

  • +5 near existing Miami account, warm contact, or planned route
  • +3 dense cluster neighborhood
  • +2 easy sample/drop logistics

E. Confidence Score, 0-15

  • +5 official signal
  • +5 social or map confirmation
  • +3 media/reservation listing
  • +2 two or more independent sources agree on name/address

F. Penalties

  • -20 chain/franchise/corporate procurement
  • -15 no beverage use case
  • -12 stale signal older than 120 days with no movement
  • -10 no contact path
  • -10 address appears to be office/home/warehouse only
  • -8 low-quality or inactive social presence

Priority Bands

PriorityScoreMeaningAction
P085-100Work nowSame-day verify and contact
P170-84StrongAdd to weekly outreach
P255-69MaybeWatch or enrich
P340-54WeakHold unless route-adjacent
Skip<40Not worth current attentionStore reason

Adaptive Loop

The radar should learn from results.

Every outreach result updates the feed model:

  • If response is positive, increase weight for the strongest source family that found it.
  • If no response after two attempts, reduce contactability confidence but do not reduce ICP fit.
  • If lead is not open yet, move to `nurture` with a timed recheck.
  • If lead is not food/beverage, mark source pattern as false positive.
  • If a lead converts, store its source trail as a gold-standard detection path.

Monthly model review:

  • Top 10 converted or high-quality Miami prospects.
  • Top 10 false positives.
  • Best source families by conversion.
  • Best neighborhoods by conversion.
  • Best opening stage for contact.
  • Average days from first signal to outreach.

Cadence

CadenceJob
Daily morningQuery official feeds and diff new/changed records
Monday / Wednesday / FridayEnrich new candidates with Google/Instagram/web
TuesdayPull media/reservation/new-opening lists
FridayProduce Miami Openings Digest
MonthlyRe-score source weights and false-positive rules

Miami Neighborhood Focus

Initial high-value neighborhoods:

  • Wynwood
  • Design District
  • Brickell
  • Coconut Grove
  • Coral Gables
  • Little River
  • Little Haiti
  • Edgewater
  • Miami Beach
  • South Miami
  • Midtown
  • Downtown

Recommended Digest Format

Miami Openings Radar - YYYY-MM-DD

P0 - Work Now
1. Business Name - neighborhood
   Stage: soft open
   Why now: IG says opening week, Google listing active, BTR found
   Why Koatji: matcha + espresso + design-forward cafe
   Action: DM today, email tomorrow, visit this week

P1 - Strong
...

Watchlist
...

False positives suppressed
...

Outreach Rules

  • Do not send automated outreach from only one weak signal.
  • Do not contact if the business is clearly not open and has no public-facing contact path.
  • For soft openings, use light language: "Saw you just opened / are getting ready to open."
  • For permit-only leads, do not mention permits. Treat permits as internal timing intelligence.
  • If a lead is Miami route-ready, prefer visit/sample over cold email when practical.

Implementation Path

Phase 1 - Manual Feed

Create `data/miami-openings-radar.csv` weekly from the source checklist. Use this protocol for scoring.

Phase 2 - Semi-Automated Feed

Build a script that:

1. Queries Miami-Dade LBT ArcGIS.
2. Pulls City of Miami permit/open-data records.
3. Reads media/RSS/web pages.
4. Normalizes name/address.
5. Diffs against previous snapshots.
6. Writes CSV/JSON digest.

Phase 3 - CRM Integration

Add qualified leads into the Koji contact database:

  • `contacts.type = lead`
  • `contacts.source = miami_openings_radar`
  • pipeline stage `lead`
  • score from radar model
  • next action based on priority

Phase 4 - Route + Digest Automation

Post a weekly digest to the Koatji sales workspace and create route-ready lead batches for Miami visits.

Current Source Registry

  • Miami-Dade Local Business Tax GIS: https://gisweb.miamidade.gov/arcgis/rest/services/BusinessTracker/MapServer/0
  • Miami-Dade LBT metadata: https://gisweb.miamidade.gov/GISSelfServices/Data/HTML/LocalBusinessTax.htm
  • City of Miami Data Explorer: https://www.miami.gov/Maps-Data/Data-Explorer
  • Miami Beach Civic Access: https://www.miamibeachfl.gov/business/civicaccess/
  • Miami-Dade Certificate of Occupancy / Certificate of Use: https://vote.miamidade.gov/global/economy/building/cert-of-occupancy.page
  • Eater Miami Openings: https://miami.eater.com/openings
  • The Infatuation Miami New Openings: https://www.theinfatuation.com/miami/guides/new-miami-restaurant-openings
  • Resy New Openings: https://blog.resy.com/new-on-resy/

Promotion Decision

Attach run IDs, datasets, metrics, and reproduction commands.

Source Anchor

koji-assistant/MIAMI-OPENINGS-RADAR-PROTOCOL.md

Detected Structure

Method · Evaluation · Architecture