Lead Generation
[ BETA ]
Broadband-scored TX OSSF permit pool: 107K rural-likely septic candidates ranked at zero per-record enrichment cost.
| Permits loaded | 165K |
| Unenriched candidates | 107K |
| Estimated TAM | $99M–198M |
PostgreSQL spatial Python enrichment BatchData skip-trace
>
EXPAND DEEP_DIVE
[+]
The expansion engine joins TX OSSF (On-Site Sewage Facility) permits with subdivision polygons across 8 counties (Travis, Williamson, Bastrop, Hays, Comal, Bexar, Guadalupe, Kendall) to identify dense septic clusters. 690 high-confidence septic streets were extracted from the existing Mac Septic customer base as ground truth.
A pilot of $4,200 BatchData spend on Cedar Creek + East Austin (42,539 addresses) is projected to yield 150-200 net-new MAC customers, based on the historical cluster density observed at Summit Glory Trail (307 Mac customers in one subdivision). Enrichment is the gating step: 107,562 candidates remain unenriched and will be processed in cost-managed batches.
The 2026-05-16 acquisition of the FCC Broadband Data Collection (924M records, 116M unique US addresses) added a free pre-scoring layer. Every TX OSSF permit candidate now carries a rural_septic_score 0-100 derived from broadband absence + TIGER urban-area overlap + ZCTA population density. Mac Septic's 8,630 customer addresses validate the v2 model — they hit the 70+ score band at 4.19% vs 1.84% for a random TX baseline (2.29x lift). BatchData skip-trace is now reserved for confirmation on the top-ranked 4,190 addresses, not blanket enrichment of all 42K.
The public face of this data layer is the National Septic Systems Map (linked above): 17M+ septic systems rendered on an adaptive cluster grid served straight from the PermitLookup API — Florida confirmed from state DOH permit records, other states inferred from property and permit signals, with the confidence tier disclosed per state on the map itself.
[ CUSTOMER ]
Mac Septic outbound + replicable to any septic service in TX, FL, GA, NC, SC.
[ REVENUE ]
$50K pilot spend → $120K new annual revenue (Mac Septic case).
[ SCALE ]
-
>
165K TX OSSF permits in 8 counties
-
>
107,562 unenriched candidates
-
>
690 high-density septic streets
-
>
Summit Glory Trail = 307 Mac customers in one subdivision
[ NEXT ]
-
→
Run rural_septic_score on the 107K unenriched candidates
-
→
BatchData confirmation on top-10K (cost cut from $4,200 → ~$1,000)
-
→
Feed pre-scored leads to Mac dialer
Lead Generation
[ BETA ]
NOAA hail × roof permits = pre-qualified storm-damage leads for roofers.
| Hail-qualified addresses | 862K |
| TX hail events (since 2014) | 15,085 |
| Pricing | $50/lead |
NOAA NCEI PostGIS FastAPI Materialized views
>
EXPAND DEEP_DIVE
[+]
A 17.3M-row materialized view joins NOAA NCEI storm reports against permit data across TX. Validation cases: Tarrant Co May 27 2024 hail (3.25") drove 1,006 roof permits in the following 120 days; Bexar Co Mar 31 2025 hail (2") drove 3,406 permits. The product surfaces address-level lists pre-filtered by storm severity and roof age.
The data layers (austin_311, storm_events, spc_storm_reports, hail_leads MV) are live; the remaining work is a paid `/api/v1/hail_leads/search` endpoint with Stripe gating and a refresh cron. Real-world launch is imminent — the lead surface is live in the permitlookup-web Next.js app at hail.ecbtx.com, gated and ready for first pilot traffic.
[ CUSTOMER ]
TX roofing contractors.
[ REVENUE ]
$50/lead × 500/mo × 2-3 customers = $50K–75K/yr per geography.
[ SCALE ]
-
>
15,085 TX hail events since 2014
-
>
862K unique hail-qualified addresses
-
>
17.3M storm × permit rows
-
>
Demo export: 79K Fort Worth address-storm rows
[ NEXT ]
-
→
Build /api/v1/hail_leads/search endpoint
-
→
Stripe gating
-
→
Sign 1–2 TX roofing partners
Lead Generation
[ LIVE ]
AI-validated rural-service lead scoring: **5.9–6.2x lift** vs HGAC baseline (v5, validated 2026-05-17). 3.66M parcel polygons across **11 Texas CADs** + 924M broadband records → ranked rural-Mac-style targets ready for dialer.
| Mac vs HGAC lift (v5) | 5.9–6.2x |
| Mac parcel coverage | 77.8% |
| Ranked targets | 4,145 |
FastAPI PostgreSQL FCC BDC bulk TIGER/Line ZCTA join Census ACS Materialized views
>
EXPAND DEEP_DIVE
[+]
Rural Service Lead Engine v5 is a scoring layer over a 4.25-billion-row federal-and-state cluster: 924M FCC broadband records, 1.75M parcel polygons (HCAD 1.46M Harris + Comal 102K + Hays 119K + Bandera 32K + Kerr 34K = full Texas Hill Country + Houston coverage), 2,644 TIGER urban-area polygons, 33K census ZCTAs, and 228K TX OSSF septic permits. For every address it computes a rural_septic_score 0-100 combining: TIGER urban-area NOT-overlap (anti-signal -35), polygon-derived lot_acres (primary signal up to +35), population density, broadband absence, and joint-condition interactions.
The validation story: v1 used broadband absence alone (0.29x lift — failed). v2 added urban-area + density (2.29x lift — usable). v3 tried address-based parcel join (1.56x — regressed due to 0.012% match rate). v4 used HCAD spatial join (0.43x — inverted because Mac is in Hill Country, not Harris). v5 added Hill Country parcel polygons for symmetric enrichment of both cohorts (5.99x vs all-TX, 5.91x vs HGAC — SHIP). Logistic regression AUC 0.86, lift 4.09x independently confirms — no leakage.
Output: 4,145 Mac-customer-confirmed rural targets in the dialer-ready queue, plus 10,000 ranked TX OSSF permits as expansion candidates. Symmetric spatial enrichment is the key — both cohorts get apples-to-apples treatment so the lift number is real, not an artifact.
[ CUSTOMER ]
Mac Septic outbound (4,145 dialer-ready targets, validated 5.91x lift). Productizable to well drillers, propane delivery, off-grid solar, satellite installers, fiber gap-filler ISPs — any rural-service vertical by swapping the validation cohort.
[ REVENUE ]
$0 today. Internal cost-avoidance: replaces $4,200 BatchData pilot with $0 model + $1K validation pass on top-4K = $3K saved per pilot. External licensing: $200-500/mo per rural-vertical operator × 5-10 customers = $30K-60K ARR with v5's shippable signal. Real-estate API tier (broadband.ecbtx.com): $0.001-0.01/call.
[ MARGIN ]
85%+ (compute + data only; no per-record cost)
[ SCALE ]
-
>
5.9–6.2x lift vs HGAC baseline (v5 validation runs, 2026-05-17)
-
>
Mac parcel coverage 77.8% (8,630 customers → 6,718 with derived lot_acres)
-
>
3.66M parcel polygons across 11 CADs: HCAD, DCAD, TAD, TravisCAD, WilliamsonCAD, HaysCAD, CCAD, BastropCAD, BurnetCAD, KerrCAD, BanderaCAD
-
>
4,145 Mac-customer-confirmed rural targets ready for dialer
-
>
10,000 ranked TX OSSF expansion candidates exported
-
>
924M FCC broadband location-provider-technology records
-
>
Logistic regression: AUC 0.86, precision-lift 4.09x
-
>
228,255 TX OSSF permits scored
[ NEXT ]
-
→
FL + NC multi-state v5 (FL DOR 10.8M polygons + NC OneMap 5.72M polygons loading now)
-
→
Census-precision geocoding deployed (85% address-precision)
-
→
Outcomes feedback loop live in Mac CRM (conversion-by-score-band view, ML retraining path)
-
→
Real-time /v1/rural-score/lookup endpoint live for any US address
-
→
Sign first external rural-vertical pilot (well drilling, propane) using same engine
[ RISKS ]
-
!
HaysCAD polygons are coarse (median 653 acres) — subdivision-aggregate geometry inflates per-lot numbers, though the score formula bins at 10+ acres so it doesn't over-credit
-
!
27 Bandera customers share a single 67.9-acre polygon (subdivision-level geometry) — cosmetic; signal still says "rural Hill Country"
-
!
Per-address geocoding (Mapbox/Census) would push Mac coverage from current 77.8% toward 95%+ at ~$0.005/address
Lead Generation
[ BETA ]
NOAA hail × HMDA × property × code violations → ranked rooftop addresses within 48 hours of a hail event. Built for TX roofers.
| Storm events | 771K (12 yrs) |
| TX hail events | 15K since 2014 |
| Mortgage records | 35M (2020-2024) |
FastAPI PostgreSQL + PostGIS NOAA NCEI HMDA bulk Cloudflare Tunnel Railway
>
EXPAND DEEP_DIVE
[+]
`/v1/roofer-leads/by-hail-event?event_id=X&days_after=120&radius_miles=20&min_magnitude=1.0` returns properties within a hail event's footprint, ranked by composite score: storm_severity (hail magnitude × 10, capped 30) + home_age (years / 2, capped 25) + mortgage_score (+20 if HMDA match within window) − roof_recency_penalty (−20 if a roof permit was pulled <5y ago, −10 if <10y) × distance_falloff.
`/v1/roofer-leads/recent?state=TX&days_back=14&min_score=50&limit=100` runs the same scoring against all hail events from the last 14 days in a state.
The underlying data was acquired and indexed during the 2026-05-15 federal-bulk session: 771K NOAA storm events 2014-2025 (771,183 details + 690K locations + 11K fatalities), 35M HMDA mortgage applications 2020-2024 (every covered lender, every loan purpose, every action), 97M property sales, 297M code violations. The state-partitioned permit tables filter recent roof permits per state.
Delivery: free for existing PermitLookup customers; standalone pilot at $50-100/lead × 100 leads/mo per pilot customer.
As of 2026-05-17, Storm Strike Dispatch ships as a focused lead-acquisition product at storms.ecbtx.com. Buyers who want a full operating system (CRM + dispatch + estimates + claims) are routed to its sibling product RoofCRM at roofers.ecbtx.com — same data layer, different value prop.
[ CUSTOMER ]
TX roofing contractors. Pricing test: $200/mo for 100 ranked leads OR $50/lead pay-per-pull. Productizable to insurance restoration contractors (water damage, wind damage) by swapping the storm type filter.
[ REVENUE ]
$0 today. Pilot pricing: $50-100/lead × 100 leads/mo × 2-3 customers = $30K-60K/yr per geography. Bigger: $500-1000/mo territory-exclusive subscriptions × 5 TX metros = $30K-60K ARR.
[ MARGIN ]
80%+ (data already paid for, marginal cost = compute)
[ SCALE ]
-
>
15,085 TX hail events since 2014
-
>
771,183 NOAA storm events 2014-2025 (all event types)
-
>
35M HMDA mortgage records 2020-2024
-
>
97M property sales with year_built signal
-
>
297M code violations as distress overlay
-
>
2 production endpoints live on Railway + permits.ecbtx.com
[ NEXT ]
-
→
Build roofers.ecbtx.com or /roofers landing with live lookup widget
-
→
Build a TX hail-event MV refreshed nightly for sub-second `/recent` response
-
→
Sign first TX roofer pilot (HOU/DFW preferred — highest event density)
-
→
Add insurance-claim-status overlay (FL DOI + TX DOI public adjuster filings)
-
→
Cross-sell to PermitLookup customers as a tier upgrade
[ RISKS ]
-
!
No active TX hail events in last 14 days at time of validation — `/recent` returned 0; benchmark on historical event needed
-
!
Score weights are heuristic — needs first-customer feedback for tuning
-
!
Distance falloff is geodesic, not actual storm-track polygon — over-includes addresses outside hail footprint
Government Data
[ LIVE ]
For any US address, return every ISP serving it with technology + speeds. 924M FCC location records, 2,135 ISPs, single-call lookup.
| Endpoints live | 3 |
| Address coverage | 116M US locations |
| Response shape | JSON · ISP list + speeds |
FastAPI PostgreSQL FCC BDC bulk TIGER tracts Cloudflare Tunnel Railway
>
EXPAND DEEP_DIVE
[+]
Three FastAPI endpoints live on production (Railway + Cloudflare Tunnel): /v1/broadband/lookup returns every ISP serving an address with technology code + max download/upload speeds + low-latency flag + business/residential code; /v1/septic-score/lookup returns the v2 rural_septic_score for any TX address with component breakdown; /v1/rural-leads/county returns a ranked list of rural-septic candidates by county.
All three are backed by the 924-million-row FCC Broadband Data Collection table (116M unique US broadband-serviceable locations, 2,135 ISPs across all 50 states + DC + PR), partitioned by state for sub-second range scans. Address resolution flows: input address → property_sales fuzzy match → block_geoid → BDC range scan → JSON response. Verified production curls: FM 1696 Huntsville returns 14 ISPs and max 5000 Mbps fiber; 5160 FM 55 Italy returns rural_septic_score 85 with "Strong rural-septic indicator" interpretation.
[ CUSTOMER ]
Real-estate platforms (Zillow-adjacent broadband overlays), relocation tools, ISP comparison sites, MLS plugins, internal Rural Service Lead Engine, internal Septic Lead Expansion. Free for existing PermitLookup tier customers.
[ REVENUE ]
$0 today. Pricing model: free 100 reqs/day, $50/mo for 10K, $500/mo for 100K, custom enterprise. Conservative target with 2-5 paying customers: $30K-120K ARR.
[ MARGIN ]
90%+ (compute + bandwidth only; data is acquired)
[ SCALE ]
-
>
924,014,277 FCC location-provider-technology records
-
>
116M unique US broadband-serviceable locations
-
>
2,135 ISPs covered
-
>
3 production endpoints (broadband/lookup, septic-score/lookup, rural-leads/county)
-
>
Sub-3s typical response time on sparse-rural tracts
-
>
State-partitioned for scale (52 partitions: 50 states + DC + PR)
[ NEXT ]
-
→
Optimize dense-tract response times (Houston downtown timeouts > 5s)
-
→
Replicate v2 MV to R730-2 for read-replica load balancing
-
→
Launch broadband.ecbtx.com marketing landing + Stripe checkout
-
→
Sign first real-estate API pilot customer
-
→
Extend /broadband/lookup to all 50 states (currently TX-optimized)
[ RISKS ]
-
!
Dense-tract performance (some Houston tracts have 2,400 BDC rows; tunnel-proxy throughput becomes the bottleneck)
Government Data
[ BETA ]
California SB-684 / SB-9 development eligibility automated; replaces $2-5K consultant work.
| CA permits cross-referenced | 776M |
| Status | Phase 1 live |
| Pricing | $50–200 / screen |
Vite + React 19 FastAPI Esri FeatureServer Cloudflare Pages
>
EXPAND DEEP_DIVE
[+]
Parcel Screen pulls parcel facts (owner, acreage, zoning, general plan) from Esri FeatureServer endpoints, runs SB-684 eligibility logic and SB-9 lot-split yield calculations, and cross-references a 776M-row CA permits database for prior approvals. Every screen produces an audit log so brokers can defend the result.
Phase 1 shipped 2026-05-13 with the core eligibility engine. Phase 2 will add statewide overlay layers (fire, flood, wetlands) and a Mapbox parcel viewer.
[ CUSTOMER ]
CA real-estate developers; co-built with Rob.
[ REVENUE ]
20–50 screens/mo × $50–200 = $12K–120K/yr.
[ SCALE ]
-
>
776M-row CA permits database cross-reference
-
>
Phase 1 shipped 2026-05-13
[ NEXT ]
-
→
Onboard 2–3 beta development partners
-
→
Phase 2: statewide overlays + Mapbox viz
-
→
TX/CO geographic expansion
Government Data
[ LIVE ]
Visual service-territory intelligence across Central Texas: 159K septic permits spanning Travis, Hays, Comal, Caldwell, Bastrop, and Williamson counties on a 120-mile fleet radius.
| Permits visualized | 159K |
| Jurisdictions | 12 |
| Fleet radius | 120mi |
Leaflet.js PostGIS FastAPI static
>
EXPAND DEEP_DIVE
[+]
A Leaflet-rendered heat map and density overlay of 159K septic permits across Central Texas, centered on the Bastrop / Cedar Creek base and extending across Travis, Hays, Comal, Caldwell, Bastrop, and Williamson counties within a 120-mile fleet radius. Service-area rings (ideal <15mi, mid 15–30mi, far 30–45mi) and a dump-site inventory layer support route and fleet decisions.
The same engine can be repackaged per-operator as a "service territory intelligence" SKU at $500–1K/mo with competitor-density overlays.
[ CUSTOMER ]
Mac Septic internal; licensable as "service territory intelligence".
[ REVENUE ]
Internal use; licensable at $500–1K/mo per operator.
[ SCALE ]
-
>
159K septic permits visualized
-
>
12 Central Texas jurisdictions across Travis, Hays, Comal, Caldwell, Bastrop, Williamson
-
>
120-mile fleet radius from Bastrop / Cedar Creek base
[ NEXT ]
-
→
Productize as standalone licensing tool
-
→
Add competitor density overlay
Customer Acquisition
[ LIVE ]
Static-first Astro site for an established Rock Hill, SC septic brand, kept separate from Mac Septic so local search does not cannibalize.
| Routes | 12 |
| Launched | 2026-05-12 |
| Client JS | Zero |
Astro 6 Tailwind 4 Cloudflare Pages
>
EXPAND DEEP_DIVE
[+]
A 12-route static Astro site (home, about, contact, service pages, and service-area pages) for the Honey Wagon Services brand in Rock Hill, SC, covering septic, portable toilet, and grease trap pumping. It ships zero client-side JavaScript, so it is fast by construction and costs almost nothing to host.
The brand runs on its own local phone line and its own identity, so it can run local and paid search without competing with Mac Septic listings in the same market.
[ CUSTOMER ]
Honey Wagon Services (Rock Hill, SC).
[ REVENUE ]
$0 direct; separate brand for non-cannibalizing local search.
[ MARGIN ]
~100% (static site)
[ SCALE ]
-
>
12 routes shipped
-
>
Launched 2026-05-12
-
>
Zero client-side JS
[ NEXT ]
-
→
Complete Google Business Profile verification
-
→
Wire the contact form to a real endpoint
-
→
Replace placeholder trust quotes with real reviews
Customer Acquisition
[ LIVE ]
First-party visitor tracking + 5-minute win-back emails. Sovereign retargeting, no Customers.ai.
| Frequency cap | 7-day |
| Live since | 2026-05-08 |
| Margin | 98% |
Custom pixel API Brevo APScheduler HMAC
>
EXPAND DEEP_DIVE
[+]
A custom pixel fires on macseptic.com → POSTs to /api/public/v1/track → a 5-minute APScheduler cron identifies abandoned sessions for known returning permit owners → Brevo dispatches one of three templates (pumping_by_city, emergency, default) → an HMAC-signed vid token + 7-day suppression cap prevents over-mailing.
Alembic 126 added the schema. Sender is dannia@macseptic.com. The same first-party pipeline can be extended to permits.ecbtx.com visitors and to SMS as a second channel.
[ CUSTOMER ]
Mac Septic internal.
[ REVENUE ]
+$36K–60K/yr (estimated 5–10 added service calls per week).
[ SCALE ]
-
>
Pixel + 5-min cron live since 2026-05-08
-
>
HMAC-signed visitor IDs
-
>
7-day suppression cap
[ NEXT ]
-
→
A/B test win-back copy
-
→
Extend to permits.ecbtx.com visitors
-
→
SMS abandonment channel
CRM & SaaS
[ LIVE ]
Real-time call + SMS + email scoring; auto-suppression of unsubs; weekly Opus strategist email.
| Reply trigger | Score ≥ 70 |
| AI spend cap | $25/day |
| Conversion lift | projected +20–30% |
Anthropic Haiku Anthropic Sonnet Deepgram nova-3 FastAPI
>
EXPAND DEEP_DIVE
[+]
RingCentral webhooks + Twilio SMS pipe into Deepgram nova-3 for transcription, then Haiku runs forced-tool-use triage to score every interaction 0–100. If score ≥ 70, Sonnet drafts a contextual reply. DNC enforcement runs at the suppression layer so any reply path respects opt-outs.
A weekly Opus strategist email summarizes sentiment, surfaces top themes, and recommends campaign adjustments. The first Sunday Opus run was 2026-05-03 06:00 CT against the Dannia campaign `email-openers-spring-2026`. AI spend is hard-capped at $25/day with auto-pause.
[ CUSTOMER ]
Mac Septic internal; productizable per-vertical.
[ REVENUE ]
+$180K impact estimated (conversion lift on Dannia outbound).
[ SCALE ]
-
>
90-day backfill verified
-
>
$25/day AI spend cap with auto-pause
-
>
Multi-channel: calls + SMS + email + chat
[ NEXT ]
-
→
Multi-vertical productization
-
→
Customer-facing scoring dashboard
-
→
A/B test reply tone variants
Customer Acquisition
[ IN_PROGRESS ]
Systematic 100-day AI-driven SEO push to crack top-10 on commercial septic keywords.
| Keywords tracked | 38 |
| Window | May 11 – Aug 19 |
| Baseline | ~0/38 |
Custom rank-checker (gpt-4o) AI copywriting Internal links
>
EXPAND DEEP_DIVE
[+]
Weekly `python3 -m scripts.ai_rank_check` measures position on 38 commercial keywords (e.g., "septic pumping Nashville", "emergency septic repair TN"). Execution levers are on-page optimization, a content calendar, link velocity from honeywagonservices, and AI copywriting for keyword-targeted landing pages.
The goal is top-10 on 10–15 commercial keywords in the 100-day window (2026-05-11 → 2026-08-19). A mid-window pivot is planned if no movement appears by day 60.
[ CUSTOMER ]
Mac Septic internal.
[ REVENUE ]
+$15K–30K/yr inbound lift estimated (10–15% volume).
[ SCALE ]
-
>
38 commercial keywords tracked
-
>
100-day execution window 2026-05-11 → 2026-08-19
-
>
Weekly ranking checks via gpt-4o
[ NEXT ]
-
→
Ship 5 keyword-targeted landing pages
-
→
Backlink velocity from honeywagonservices
-
→
Mid-window pivot if no movement by day 60
Government Data
[ LIVE ]
297 million code violation records joined to the permit and property graph. The largest single table in the platform.
| Records | 297M |
| On-disk size | 101 GB |
| Coverage | National |
PostgreSQL 16 PostGIS Tailscale FastAPI
>
EXPAND DEEP_DIVE
[+]
A 297-million-row code-violations table loaded into the same permits database. Each record carries jurisdiction, parcel, violation type, status, and date. When joined to property_sales (97M), property_liens (37M), and the permit graph (777M), it forms a national distress-signal layer.
Loaded incrementally from county and municipal portals via the gov-data-extraction framework. The dataset is the basis for a forthcoming "distress leads" product targeting field-service contractors and real-estate distress investors.
[ CUSTOMER ]
Field-service contractors, real-estate distress investors (pre-monetization).
[ REVENUE ]
Pre-monetization. Estimated $50–150/lead × 1,000+/mo when productized.
[ SCALE ]
-
>
297,152,967 rows
-
>
101 GB on-disk
-
>
Joined to property_sales, property_liens, permits
[ NEXT ]
-
→
Build distress-signal API endpoint
-
→
Pilot with one Texas roofer or one collections firm
-
→
Add weekly refresh cron from top 25 county portals
Government Data
[ LIVE ]
176 million property records: sales, liens, valuations, and NYC ACRIS parties. The owner-and-asset side of the permit graph.
| Records | 176M |
| Tables | 4 |
| Coverage | National + NYC |
PostgreSQL 16 PostGIS Python ETL BatchData NYC ACRIS API
>
EXPAND DEEP_DIVE
[+]
Four tables form the property side of the platform: property_sales (97M rows, 23 GB), property_liens (37M rows), acris_parties (33M NYC ACRIS records), and property_valuations (9M rows). All four are the join targets for the enrich_norm_addr.sql and enrich_with_sales.sql cron jobs that hydrate hot_leads with owner and price data each morning.
Original acquisition was a mix of BatchData purchases, county assessor scrapes, and the NYC ACRIS public bulk feed. The combined suite means any permit address in the platform can be enriched with a real owner name, last sale price, lien status, and assessed value in milliseconds.
[ CUSTOMER ]
Mac Septic outbound enrichment, contractor enrichment, Hail Leads owner attach, Parcel Screen ownership facts.
[ REVENUE ]
Currently internal; licensing path mirrors PermitLookup at $500–2,000/mo per vertical.
[ SCALE ]
-
>
97M property sales records
-
>
37M property lien records
-
>
33M NYC ACRIS party records
-
>
9M property valuation records
-
>
Joined nightly to permits + hot_leads via enrichment SQL
[ NEXT ]
-
→
Add owner-phone enrichment via contractor_licenses join
-
→
NYC mortgage-doc subset for distressed-property cohort
-
→
Public API tier with usage caps
Infrastructure
[ LIVE ]
On-prem Qwen 3.5 122B + embeddings on dual-GPU R730. Zero per-token spend on internal AI workloads.
| Active model | Qwen3.5 122B |
| Model size | 81 GB |
| Per-token cost | $0 |
Ollama Qwen 3.5 122B nomic-embed-text NVIDIA dual-GPU R730 Cloudflare Tunnel
>
EXPAND DEEP_DIVE
[+]
A locally-hosted LLM cluster running on the R730 (88 cores / 768 GB RAM, dual NVIDIA GPUs, GPU-aware fan control). The active reasoning model is Qwen 3.5 122B at 81 GB on disk; nomic-embed-text handles embedding workloads for the RAG service in security-stack. Both are served by Ollama and reachable across the Tailscale mesh.
The cluster is the substrate for any non-real-time AI workload: nightly summary jobs, batch transcription scoring, embedding generation for the SOC RAG, OCR post-processing on tank inspections, and reasoning over scraped permit corpora. Anthropic Claude is reserved for latency-sensitive customer-facing flows; everything internal flows here.
[ CUSTOMER ]
Internal: AI Interaction Analyzer, Tank Vision OCR, Security Operations Center, PeakDipVibe research pipeline.
[ REVENUE ]
No direct revenue. Cost-avoidance estimated at $4–8K/yr in AI API spend at current internal volume.
[ SCALE ]
-
>
Qwen 3.5 122B (81 GB) live since 2026 Q2
-
>
Dual-GPU R730 with custom fan control
-
>
nomic-embed-text for vector workloads
-
>
Tailscale-mesh accessible from every node in the cluster
[ NEXT ]
-
→
Add a third smaller model for low-latency triage
-
→
Move PeakDipVibe pipeline fully on-prem
-
→
Publish internal usage dashboard
Government Data
[ BETA ]
Dual-GPU OCR pipeline with learned-rule extraction; turns county septic-permit PDFs into structured rows.
| Active counties | 8 (TX + TN) |
| Mode | Dual-GPU |
| Approach | Learned rules |
Python NVIDIA dual-GPU Custom OCR + extraction rules PostgreSQL
>
EXPAND DEEP_DIVE
[+]
Tank Vision is a self-improving OCR pipeline. It takes county septic-permit PDFs (currently Comal County CCEO in Texas), runs dual-GPU OCR, applies a learned-rules extractor that grows over time (learned_rules.json, learned_examples_comal.json), and writes structured rows directly into the permits database.
The pipeline is the cost-avoidance answer to county PIA requests like the Kendall County $3,456 quote (declined April 2026). Each new county adds incremental scrape effort but zero ongoing per-record cost.
Active coverage now spans Texas + Tennessee: Comal County (TX) plus a Tennessee cohort across Hamilton (Chattanooga), Davidson (Nashville), Rutherford (Murfreesboro), Shelby (Memphis), Williamson (Franklin), Wilson (Lebanon), Maury, and a Johnson City 4-county bundle. Hays, Williamson (TX), and Bexar are next in queue.
[ CUSTOMER ]
PermitLookup data ingestion (internal); Mac Septic outbound enrichment.
[ REVENUE ]
Cost-avoidance. Replaces $3K–6K/county PIA quotes at near-zero marginal cost.
[ SCALE ]
-
>
Comal CCEO septic permits actively processed (TX)
-
>
TN coverage: Hamilton (Chattanooga), Davidson (Nashville), Rutherford (Murfreesboro), Shelby (Memphis), Williamson (Franklin), Wilson (Lebanon), Maury, plus Johnson City 4-county bundle
-
>
Dual-GPU launch script (launch_dual_gpu.sh)
-
>
Self-improving learned rules + examples corpus
[ NEXT ]
-
→
Add Hays + Williamson (TX) + Bexar counties
-
→
Generalize learned-rules engine across counties
-
→
Auto-detect and queue new permits from county portals
Government Data
[ PAUSED ]
Autonomous multi-tier enrichment pipeline: SQL joins, Haiku fuzzy match, Sonnet deep analysis, cross-node sync. Cost-tracked, anomaly-monitored, SMS-reported.
| Tiers | 3 |
| Per-run enriched | ~4,600 |
| Status | Paused |
Python Anthropic Claude (Haiku + Sonnet) PostgreSQL trigram SQLite cost ledger RingCentral SMS
>
EXPAND DEEP_DIVE
[+]
A standalone orchestrator on R730-2 that runs three tiers of enrichment over the permit graph.
Tier 1 is pure SQL: address normalization, exact-match joins against property_sales and contractor_licenses, PostgreSQL trigram fuzzy matching with auto-accept above 0.7 and an escalation queue between 0.4 and 0.7. A typical run enriches ~4,600 leads in under 10 minutes.
Tier 2 escalates the trigram-ambiguous matches to Claude Haiku in batches of 20; Haiku accepts above a tuned confidence of 0.85 and rejects below 0.4. Anything in between escalates again to Claude Sonnet with a 0.7 accept threshold. Every LLM call is logged with token counts and dollar cost in a SQLite ledger (costs.db) for per-day and per-month budget reporting.
Tier 3 is rich Sonnet analysis on the highest-value leads, plus a description miner (Haiku-only) that extracts septic-tank size and inspection-status hints from free-text permit descriptions. The agent also runs an anomaly detector that compares today's tier-1 stats to the 7-day median and fires a RingCentral SMS to the operator on underflow (today=0 vs median 1 already caught a regression on 2026-04-24).
The nightly sync pushes enriched rows from R730-2 to T430 with a regression gate: if any field has lower coverage on R730-2 than T430, the sync aborts and alerts. Twilio is used for phone validation on top-priority phones; a website finder enumerates contractor URLs and classifies them. The whole thing is flock-guarded so cron drift can't fire two instances.
Cron is paused since 2026-04-24 after a Tier-2 batch returned 2,250 consecutive Anthropic API errors. The Tier-1 SQL pipeline is independently working and ready to re-enable; Tier-2 needs API stability work or a fallback to the on-prem Sovereign LLM cluster (Qwen 3.5 122B) to bypass external API risk.
[ CUSTOMER ]
Internal feeder for PermitLookup, Mac Septic outbound, contractor enrichment.
[ REVENUE ]
No direct revenue. Multiplies the value of every paid PermitLookup API call by raising row-level enrichment from sparse to dense.
[ SCALE ]
-
>
4,653 property-sales joins per run on 2026-04-24 (last live run)
-
>
~2,000 contractor + 250 applicant trigram escalations per run
-
>
3-tier LLM pipeline: trigram → Haiku → Sonnet with tuned thresholds
-
>
SQLite-backed cost ledger with per-day and per-month budget tracking
-
>
RingCentral SMS alerts to +1 979-236-1958 on anomaly underflow
-
>
Cross-node sync with regression gate
-
>
flock-protected single-instance guarantee
[ NEXT ]
-
→
Re-enable Tier-1 SQL cron (works standalone, no external API)
-
→
Migrate Tier-2 fuzzy matching to local Qwen 3.5 122B (Sovereign LLM Cluster) to eliminate external API risk
-
→
Productize as a per-vertical enrichment SKU once stable
[ RISKS ]
-
!
Tier-2 Anthropic API instability caused 2,250-error cascade on 2026-04-24 → cron killed
-
!
No git remote — code lives only on R730-2; back up or move to wburns02/permit-enrichment-agent
Infrastructure
[ LIVE ]
Self-hosted Wazuh SIEM + Elasticsearch + RAG-enabled SOC dashboard + pentest tooling, running on the R730.
| SIEM | Wazuh |
| Search | Elasticsearch |
| AI assist | RAG |
Wazuh Elasticsearch Qdrant (vector) Docker Compose RAG pipeline
>
EXPAND DEEP_DIVE
[+]
A full self-hosted security stack with three composed pieces: Wazuh SIEM (1514/1515), Elasticsearch (9200), and a RAG service backed by Qdrant for AI-assisted alert reasoning. A SOC dashboard fronts the alert queue and lets the operator query the RAG with natural language ("which hosts ran sudo today and have an unfamiliar process tree").
A dedicated pentest folder holds offensive tooling for periodic internal exercises. The whole stack runs in Docker Compose with separate compose files for SOC services and RAG service.
[ CUSTOMER ]
Internal across all nodes (R730, R730-2, optiplex). Future: licensable to small-business clients who want managed detection without an MSSP contract.
[ REVENUE ]
Internal. Externalization estimated at $1–3K/mo per managed client.
[ MARGIN ]
70%+ if externalized
[ SCALE ]
-
>
Wazuh agents on every Tailscale node
-
>
Elasticsearch index for log search
-
>
Qdrant vector DB for RAG-assisted triage
-
>
SOC dashboard + pentest tooling
[ NEXT ]
-
→
Onboard one external pilot client
-
→
Productize as a "managed detection light" SKU
-
→
Auto-generate weekly threat-summary email
Lead Generation
[ BETA ]
Permit-and-property-driven roll-off dumpster lead platform with gated funnel, hot-leads table, and live analytics.
| Event types | gate · view · filter · click · phone-tap |
| Analytics refresh | 5-min cron |
| Stack | Next.js 16 + shadcn |
Next.js 16 React 19 shadcn Tailwind 4 PostgreSQL (Tailscale) Vercel Recharts
>
EXPAND DEEP_DIVE
[+]
Dumpster Leads is a roll-off dumpster lead-gen product at dumpster.ecbtx.com, hosted in the permitlookup-web Next.js 16 / React 19 / shadcn app on Vercel. The customer-facing leads dashboard filters dumpster prospects by pool, E4, and permit signal off the 1.5B-record warehouse, with mobile-first responsive design and a password gate to wall off pre-launch beta access. A per-session event tracker writes to a dumpster_events Postgres table on Tailscale (event types: gate_unlock, page_view, filter_apply, lead_click, phone_tap, plus smoke-test variants) with full visitor + session + geo + viewport instrumentation. An admin analytics dashboard at /admin/dumpster-analytics renders KPIs (visitors today, sessions today, events 24h, last event), a 30-day series chart, geo distribution, the 5-stage funnel, hot-leads table, and a live event feed. The full rollup is refreshed every 5 minutes by a server-side cron (dumpster_analytics_dump.sh on R730) that runs the SQL and writes a single JSON snapshot to dashboard-cache served verbatim via Tailscale Funnel; Vercel proxies that JSON via /api/admin/dumpster-analytics. The architecture is the canonical pattern: customer-facing Next.js on Vercel, data on Tailscale-internal Postgres, analytics by static-JSON proxy — fast, secure, zero DB exposure.
[ CUSTOMER ]
Roll-off dumpster rental companies + property/contractor lead buyers (TX initial geo). Pre-launch.
[ REVENUE ]
$0 today; $25–75/lead × 200-500 leads/mo × 1-3 customers = $60K–$135K ARR per geography. Pricing model: per-lead, prepaid lead-pack, or monthly subscription.
[ MARGIN ]
60%+ (data + JIT inference; no per-lead acquisition cost)
[ SCALE ]
-
>
Live on dumpster.ecbtx.com (Vercel)
-
>
Backed by 1.5B-record permit + property warehouse
-
>
5-minute analytics refresh cron
-
>
Full funnel instrumentation (gate · view · filter · click · phone)
-
>
shadcn / Tailwind 4 design system
-
>
Tailscale Funnel JSON proxy for analytics
[ NEXT ]
-
→
Sign first roll-off pilot customer
-
→
Stripe per-lead pricing
-
→
Outbound script for first 10 dumpster operators
-
→
Geo expansion (FL, GA, NC, SC)
[ RISKS ]
-
!
Pre-launch — funnel needs first real-world traffic to validate conversion math
Infrastructure
[ LIVE ]
Autonomous multi-Claude orchestration: spawns workers, detects promise tags, monitors production sites.
| Workers | N-parallel Claude Code |
| Dashboard | Port 8787 |
| Generation | Gen4 experiments |
Python 3.14 FastAPI SQLite (async) Rich TUI Claude CLI subprocess Typer
>
EXPAND DEEP_DIVE
[+]
Conductor AI is the internal orchestration layer for the portfolio. It spawns autonomous Claude Code worker processes in parallel, detects completion signals via promise-tag parsing on streamed JSON output, manages task queues, and runs a Rich TUI dashboard plus REST API on port 8787 with an embedded PTY terminal. Conductor monitors production sites (drphil.ecbtx.com, react.ecbtx.com, others) and triggers auto-fix sprints when health checks fail. The Gen4 experiments add a blackboard for cross-agent state sharing, a metacognition layer, adversarial verification of outputs, and a context distiller for long-running sessions. Conductor is integrated into Claude Terminal for one-command project switching. Stack: Python 3.14 + FastAPI + Uvicorn + SQLite (async) + Rich + Typer + Claude CLI subprocess workers.
[ CUSTOMER ]
Internal force multiplier across all 32 portfolio products.
[ REVENUE ]
$0 direct. Cost-equivalent of $250-500K/yr in salaried engineering time (1 operator running 32 products).
[ SCALE ]
-
>
N-parallel Claude Code worker pool
-
>
Promise-tag completion detection
-
>
Production-site health monitoring with auto-fix
-
>
Gen4: blackboard + metacognition + adversarial verifier + context distiller
-
>
Embedded PTY + web dashboard on port 8787
-
>
Project memory logging
[ NEXT ]
-
→
Open-source the orchestrator
-
→
Publish Gen4 experiment papers
-
→
Multi-operator deployment
Infrastructure
[ LIVE ]
Operator UI for Conductor AI: animated React + xterm.js terminal frontend wired to the Conductor session launcher, branded and built specifically for the Conductor AI product surface.
| Product | Conductor AI frontend |
| Terminal | xterm.js |
| Engine | Framer Motion 12.34 |
React 19 TypeScript Vite 7 Tailwind 4 Framer Motion 12.34 xterm.js
>
EXPAND DEEP_DIVE
[+]
This repo is the Conductor AI dashboard frontend. GitHub remote is wburns02/conductor-dashboard. The package.json is private: true, version 0.0.0, with no exports field; per the deep-doc audit there are zero downstream import consumers. Layout.tsx hardcodes Conductor branding and navigation; the "project launcher" in src/pages/TerminalPage.tsx is a menu for spawning Claude sessions across the Conductor-managed surface (DrPhil, NurseStation, ClaudeBall, PermitAPI, Conductor AI, ClaudeBallGFX), not a list of products that import this library. Highlights: live xterm.js terminal emulator with Framer Motion animations and web-links addon, advanced animation patterns (performance sprint, circuit-breaker UI), and a component framework under src/components and src/features. Stack: React 19 + TypeScript + Vite 7 + Tailwind 4 + Framer Motion 12.34 + xterm.js + React Router DOM 7. Docker-containerized via Node serve on port 3000; Playwright test coverage.
[ CUSTOMER ]
Conductor AI operators. This is the Conductor product UI, not an externally distributed library.
[ REVENUE ]
$0 direct. Part of the Conductor AI product surface; value is captured by Conductor, not by the dashboard frontend itself.
[ SCALE ]
-
>
Conductor AI operator UI (single product, not multi-tenant)
-
>
xterm.js terminal emulator
-
>
Framer Motion 12.34 animation primitives
-
>
Session launcher (TerminalPage) for spawning Claude sessions
-
>
Performance sprint patterns + circuit-breaker UI for service health
[ NEXT ]
-
→
Tighten coupling with the Conductor AI backend session API
-
→
Surface real-time agent status + cost telemetry in the dashboard
-
→
Per-session transcript replay and export
Infrastructure
[ LIVE ]
Internal Docker-deployed SEO content processing microservice on R730.
| Deployment | R730 Docker |
| Proxy | nginx |
| Type | Internal moat |
Python Docker nginx NLP / ML pipeline PostgreSQL
>
EXPAND DEEP_DIVE
[+]
ECBTX SEO Service is an internal Docker-containerized microservice processing SEO content at scale for portfolio properties. The architecture is stateless with separate data, models, and credentials directories; nginx serves as reverse proxy / load balancer for multi-tenant or multi-endpoint routing. The service powers content automation for permit lookup, county-specific landing pages, and other SEO-heavy properties in the portfolio. Deployed on R730 with Docker Compose; version managed via version.txt; credentials isolated.
[ CUSTOMER ]
Internal across all portfolio web properties.
[ REVENUE ]
$0 direct. Replaces $5-15K/mo in agency SEO content production.
[ SCALE ]
-
>
Multi-container Docker stack
-
>
nginx reverse proxy
-
>
Stateless processing layer
-
>
Powers 19+ county landing pages + main brand sites
[ NEXT ]
-
→
Externalize as managed SEO content engine SKU
-
→
Publish content velocity dashboard
-
→
Add programmatic SEO scaling per vertical
Vertical SaaS
[ BETA ]
Multi-tenant team-performance platform for a university rugby club: coach dashboards, training-load logging, generated plans, and an Apple Watch companion.
| Phases shipped | 0-3 |
| Backend tests | 409+ |
| Apple Watch | Verified on device |
FastAPI PostgreSQL React Capacitor (iOS) watchOS
>
EXPAND DEEP_DIVE
[+]
Team Edition extends HealthForge into a multi-tenant product built for a university rugby club. Coaches get training-load dashboards, alert rules, and a matchday mode; athletes log sessions and receive auto-generated training plans; an Apple Watch companion handles in-session capture. Coach views are aggregate by design so individual health data stays with the athlete.
Phases 0 through 3 (teams, session logging, coach console, alerts, matchday mode, and the watch companion) were built and shipped in a single overnight run on 2026-09-08. The watch app was confirmed on a real paired device through TestFlight on 2026-09-14, and the backend suite stands at 409+ passing tests.
[ CUSTOMER ]
A university rugby club (pilot).
[ REVENUE ]
$0 today. Pilot-ready; team rollout has not started.
[ SCALE ]
-
>
Phases 0-3 shipped 2026-09-08
-
>
409+ backend tests passing
-
>
Apple Watch companion verified on device (TestFlight)
[ NEXT ]
-
→
Onboard the pilot roster through an external TestFlight group
-
→
Structured injury-severity field
-
→
Automatic session detection from heart-rate data
Voice & Phone AI
[ LIVE ]
Live-call AI coach: real-time transcription plus talking points and a running tracker during any call, driven by swappable per-meeting profiles.
| Suggestion cadence | ~30s |
| STT | Deepgram nova-3 |
| New meeting type | 1 JSON file |
Node.js Deepgram nova-3 Claude Haiku
>
EXPAND DEEP_DIVE
[+]
Meeting Copilot listens to call audio, transcribes it in real time with Deepgram nova-3, and every 30 seconds or so sends the rolling transcript to Claude Haiku for suggested talking points, open questions, and a live tracker shown in a browser UI.
Each meeting type is a profile: a JSON file that defines goals and what to track. Profiles are re-read on every request, so adding a new kind of meeting is a file drop with no restart.
[ CUSTOMER ]
Internal tool.
[ REVENUE ]
$0 (internal tool).
[ NEXT ]
-
→
Generalize the built-in profiles
-
→
Package as a standalone product
Infrastructure
[ IN_PROGRESS ]
Custom cellular septic-system monitor: nRF9160 firmware, mTLS MQTT to a self-hosted broker, CRM dashboard, and SMS alerts when a pump or alarm fails.
| Radio | nRF9160 cellular |
| Transport | mTLS MQTT (EMQX) |
| Alert paths | 2 of 2 proven |
nRF9160 Zephyr / nRF Connect SDK EMQX FastAPI React
>
EXPAND DEEP_DIVE
[+]
Watchful is custom hardware and firmware built on a Nordic nRF9160 cellular module. It watches aerobic-system pump pressure and the OEM alarm signal, publishes over mutually authenticated TLS to a self-hosted EMQX broker, and a bridge in the Mac Septic CRM turns failures into SMS alerts and dashboard events.
On 2026-08-26 the fleet moved from a public test broker to the self-hosted broker with certificate-scoped per-device access control. On the bench unit both critical alert paths, air-pump failure and OEM alarm, have fired end to end, including live SMS delivery to a technician's phone.
[ CUSTOMER ]
Mac Septic aerobic maintenance-contract customers.
[ REVENUE ]
$0 today (pre-production).
[ SCALE ]
-
>
Self-hosted mTLS broker with per-device certificates (2026-08-26)
-
>
Both critical alert rules proven end to end on bench hardware
-
>
Dashboard live inside the Mac Septic CRM
[ NEXT ]
-
→
Resolve cellular connectivity on the bench unit
-
→
Field pilot on customer systems
[ RISKS ]
-
!
Bench-proven only; zero field units deployed
-
!
LTE connectivity and a sensor fault still open on the bench unit
Strategic Accounts
[ PAUSED ]
Concept for AI agents that sit on every handoff in a construction project, plus a working subcontractor insurance-compliance CRM.
| Demo lanes | 7 |
| Interactive scenarios | 10 |
| COI checks | 10-point |
HTML / CSS / JS Cloudflare Pages FastAPI PostgreSQL React
>
EXPAND DEEP_DIVE
[+]
Built with a construction-industry collaborator. The concept demo maps 7 operational lanes and 10 clickable handoff scenarios where an agent tracks open items and follows up before they slip, all on simulated data. It was built and deployed the same day as the first pitch conversation, 2026-07-03. A sub-demo runs a 10-point certificate-of-insurance validation against a sample insurance exhibit.
The follow-on was a single-tenant proof-of-concept CRM, built 2026-07-15, that implements the first real workflow: chasing subcontractor compliance documents against a project's insurance requirements.
[ CUSTOMER ]
Construction general contractors (via collaborator).
[ REVENUE ]
Commercial terms not finalized.
[ NEXT ]
-
→
Settle commercial terms before further engineering
Strategic Accounts
[ LIVE ]
Pricing tool for a Central Texas luxury restroom-trailer rental company: per-gallon pump-out price plus a live Google Maps-routed fuel and drive-time surcharge.
| Routing | Live Directions API |
| Service area | 18 cities |
| Built | Same day |
HTML JavaScript Google Maps Directions / Distance Matrix / Places
>
EXPAND DEEP_DIVE
[+]
A single-page calculator that prices a pump-out by gallons and adds a distance surcharge from the real, traffic-aware Google Maps route between the company's truck yard and the job. When live routing is unavailable it falls back to ZIP-centroid distances, and then to manual miles.
Drive times are calibrated against about 25 reference routes across the 18-city service area, with metro-level handling for Austin and San Antonio. Built and shipped on 2026-09-03.
[ CUSTOMER ]
A Central Texas luxury portable restroom rental company.
[ REVENUE ]
Client engagement; terms private.
[ NEXT ]
-
→
Move to durable hosting
-
→
Re-calibrate drive times on peak business days
Vertical SaaS
[ BETA ]
Constraint-solver shift scheduling for a call-center operator: OR-Tools CP-SAT schedules 175 agents at 99.4% floor fill with zero unassigned shifts.
| Agents scheduled | 175 |
| Shift-floor fill | 99.4% |
| Shard speedup | 3.85x |
Python OR-Tools CP-SAT FastAPI PostgreSQL React 19 TanStack Query
>
EXPAND DEEP_DIVE
[+]
The scheduler builds agent shift schedules with an OR-Tools CP-SAT model over queue, skill, and demand constraints, then exposes them in a drag-to-edit calendar with Erlang C volume forecasting, shift swaps, time-off handling, and scenario comparison.
Tuned against a 175-agent roster it reaches 99.4% shift-floor fill, 97%+ per-queue coverage, and zero unassigned shifts within a 420-second solve budget; splitting the solve into four parallel shards cut runtime from 162s to 42s. The v2 build shipped with 44 API endpoints and 161 automated tests.
[ CUSTOMER ]
A call-center operator.
[ REVENUE ]
Client engagement; terms private.
[ NEXT ]
-
→
Real authentication before live employee data
-
→
Forecasting from a live ACD feed
-
→
Scenario-compare polish
Infrastructure
[ LIVE ]
Live dashboard for every AI coding session in flight: real token usage by model, right now and by day, pulled from the actual transcripts and provider APIs, not a screenshot.
| Tracked in one day | ~890M tokens across all models (2026-09-30) |
| Data sources | 3 (Claude transcripts, kimi CLI, live Z.ai quota API) |
| History | 14-day rolling view, one row per day |
Python (stdlib only) ThreadingHTTPServer Cloudflare Tunnel + Access systemd
>
EXPAND DEEP_DIVE
[+]
Reads two live sources per session (the session registry and each session's own transcript JSONL) for a real-time board of what's running, and separately scans every transcript on disk plus kimi CLI session logs for a day-by-day usage history, independent of which sessions are still alive. A short server-side cache keeps the expensive historical scan fast on repeat loads without going stale for more than 15 minutes.
Built and hardened the same way any production change here goes out: full existing test suite green before touching the live systemd service, a throwaway-port smoke test against real data first, then a restart and a live re-verify after deploy, never the reverse.
[ CUSTOMER ]
Personal ops tooling; also the standing proof artifact for 'documented token usage' in technical interviews.
[ REVENUE ]
$0 (internal tool).
[ SCALE ]
-
>
216 tests, zero skips
-
>
Live at call-monitor.ecbtx.com behind Cloudflare Access
Customer Acquisition
[ LIVE ]
Weekly tracker for share of search-grounded AI answers (OpenAI, Anthropic, Perplexity, Gemini) that mention each ECBTX property, broken out by market and provider.
| Mac Septic mention rate | 56.5% of tracked questions, 2026-W40 |
| Properties tracked | 3 (Mac Septic, Signature Pour, Fox & Owl) |
| Providers | 4 (OpenAI, Anthropic, Perplexity, Gemini) |
Python Cloudflare Pages Weekly cron (Monday)
>
EXPAND DEEP_DIVE
[+]
Runs a fixed set of tracked questions against all four major search-grounded AI providers every week, scores whether each property is mentioned/recommended/cited, and breaks the result out by market (TX/TN/SC) so a regional dip is visible instead of averaged away. Generated fresh each run, no manual data entry.
[ CUSTOMER ]
Internal; drives AI-search visibility strategy across all ECBTX marketing accounts.
[ REVENUE ]
$0 direct; the outcome it measures is the 25% ECBTX AI-search share target by 2026-12-29.
[ SCALE ]
-
>
247 checks/week on Mac Septic alone
-
>
SC leads all three markets at 39% mention rate (2026-W40)
// NO PROJECTS IN THIS CATEGORY