No news is bad news.
I classified 120 Texas data center projects. The ones with opposition had a 79% survival rate. The ones that went quiet? That's where the dead projects are.
I built this entire analysis — 90K ERCOT projects, 665 news articles, 120 data centers, and interactive map — in 45 minutes for $3.
Timeline: Last Sunday morning, my toddler was on the phone with grandma for 25 minutes. That’s when I did most of the heads-down work. The rest I built on my phone via WhatsApp during downtime later in the day.
---
How It Got Built (45 Minutes, $3)
Minutes 0–5: ERCOT. Started with reading. ERCOT announced they’re overhauling how large loads connect to the grid — moving to batch transmission studies because the old one-at-a-time approach created what VP Jeff Billo called a “study doom loop.” That got me digging into the queue itself. So I grab 90 monthly GIS reports for all 89,694 projects. Dropped all 90 files in a folder, sent to Clawdbot: “Consolidate. Schema detection. Geocode to county centroids. Output SQLite.” Clean database, 89,694 rows, geocoded. Cost: $0.20.
Minutes 5–10: News scraping. SerpAPI + Google Places query template across 254 Texas counties. Kicked off the scrape (20 minutes with rate limits, but runs in background). Cost: $2.
Minutes 10–15: Entity extraction. Toddler on phone with grandma — heads-down time. 665 articles in SQLite. Sent batches to Clawdbot for structured extraction: company, location, date, status signals, MW capacity. Router switched between Gemini Flash (cheap quick extractions), Grok (complex multi-project articles), and DeepSeek (batch processing). Got 120 projects at ~80% accuracy. Cost: $0.20.
Minutes 15–20: Deduplication. Fuzzy-matched duplicates (same company + same county + similar announcement = merge). Caught 27 duplicates, flagged 5 non-Texas projects. Added 8 known facilities manually. Cost: $0.30.
Minutes 20–25: Classification. Classified each project’s status (approved, delayed, canceled, in-progress, unknown) with article citations. DeepSeek handled clear cases, Grok and Gemini took ambiguous ones. 50 classified with high confidence, 46 flagged for missing coordinates, 24 flagged for insufficient signal. Cost: $0.60.
Minutes 25–35: The reversal. Ran stats from my phone. Opposition projects: 21% fail. No-opposition projects: 33% fail. Wait — opposition projects fail less?
Clawdbot reviewed the article text: “12 of 15 failed projects have zero opposition signals. They went silent. Projects with opposition have news coverage — that’s why they show up.
Absence of coverage ≠ success; it’s often death.”
Hypothesis flipped.
Minutes 35–45: REIT analysis + map assembly. Buffered 227 REIT properties at 50 miles, checked DC project overlap (63.3%). Added classified markers to existing Mapbox layer system. Posted to LinkedIn.
Total: ~$2.60, rounded to $3.
What the Map Shows
Four interactive layers. Screenshots below, or explore the live map [here].
County heatmap: Fill color = ERCOT project count. Darker red = more interconnection projects. Glasscock County (558 projects, 85,845 MW) glows bright red. 89 counties have zero. Click a county and it highlights with a white border, dims everything else, and shows adjacent counties.
[Screenshot: ERCOT Counties layer]
Producer/Consumer layer: Green = energy producer, red = consumer, purple = hybrid. This is the spatial mismatch that started everything. The counties generating massive power (West Texas wind farms) are nowhere near the counties consuming it for data centers (DFW/Austin metros). Dallas County: 13 data centers, 247 MW local generation, imports almost everything. Glasscock County: 85,845 MW capacity, zero data centers.
[Screenshot: Producer/Consumer Counties layer]
Data center markers: Green = approved/operational. Orange = uncertain/in-progress. Red dots pulse when there’s been a news article in the last 90 days. Circle size scales with MW capacity. Hover any marker for project name, company, status, size, announcement date, and source link.
[Screenshot: Texas Data Centers layer]
REIT properties: Company-colored markers for 227 properties — Equinix, Digital Realty, Prologis, Public Storage, Simon Property Group. 63.3% of new DC projects fall within 50 miles of these markers. The clustering in DFW, Houston, and Austin is immediately visible.
[Screenshot: REIT Properties layer]
How Clawdbot Works
WhatsApp bot connected to a model router and my laptop. I send a task, the router picks the cheapest model that can handle it, runs the job, saves the results and gives me an update.
Routing logic: DeepSeek V3 for bulk processing and spatial ops ($0.14/M tokens). Kimi2 for schema detection and large file consolidation ($0.30/M). Gemini Flash for fast extractions and JSON formatting ($0.075/M). Grok for complex reasoning and ambiguous interpretation (free tier, then $0.50/M). Claude reserved for final verification when I need citations (~$3/M — avoided entirely for this analysis).
The router checks free tier limits first. If Grok has quota left, use Grok. If not, fall back to DeepSeek.
Three-stage pipeline for this analysis: Data consolidation (Kimi2 for schema detection and geocoding), entity extraction (Gemini Flash, Grok, and DeepSeek across 665 articles), and classification + verification (DeepSeek for clear cases, Grok for ambiguous ones). Costs per step are in the build walkthrough above.
What I still do manually: Final review of flagged edge cases. Writing the prompts. Map assembly. This post. Strategic decisions (like “wait, opposition projects fail LESS?”).
Why WhatsApp: Toddler chaos means I work in 5-10 minute bursts. Send a task, put the phone down, come back to results. No laptop required.
If you want the actual router setup or the prompts I use, hit reply.
What I Found
Real failure rate: 30% (15 of 50 resolved projects stuck or dead).
17 of 120 projects face opposition. But opposition doesn’t predict failure the way you’d expect:
Projects with opposition: 21% fail (3 of 14 resolved)
Projects without opposition: 33% fail (12 of 36 resolved)
Why? Opposition means attention. Someone’s writing articles, filing complaints, showing up at zoning hearings. The project is alive. Companies respond. 11 of 14 resolved opposition projects got approved — 79% survival rate.
12 of 15 stuck projects have zero opposition signals. No lawsuits. No zoning fights. No coverage. They just went quiet. STACK Infrastructure DFW: 85 months. Skybox Pflugerville: 49 months. Others with a single article, then nothing for years. How we know: 11 of those 12 were classified via the stale rule — announced 18+ months ago with ≤1 article. No permit or construction keywords in the articles. We infer death from absence of follow-up, not from explicit “canceled” language.
The momentum pattern: Companies with 0% failure — Google (0/3), CyrusOne (0/2), Amazon (0/2), Vantage (0/2) — keep filing permits, breaking ground, issuing updates. Companies with 100% failure — STACK Infrastructure (2/2), Skybox/Prologis (2/2) — announced and went silent.
Opposition is survivable. Silence isn’t.
Limitations
46 projects lack coordinates — can’t map to county permit systems. If you have access to Texas county permitting databases I couldn’t reach, send them. 24 have minimal signal — one article, no follow-up, too recent or too quiet to classify. 50 resolved is enough to see patterns but not enough for statistical precision on company-level rates. But the pattern held across every cleanup step — dedup, non-TX removal, adding known projects — failure rate stayed 30–35% and the silence pattern stayed at 12/15.
The Data
The analysis gets better when people check the work.
Full dataset: [Link to data package]
7 files, 181 KB:
tx_dc_projects_classified.csv — 120 projects with classification, opposition signals, company, location, age, status
tx_dc_opposition_detail.csv — 17 opposition cases with keyword detail and outcomes
tx_dc_company_outcomes.csv — 34 companies with resolved failure rates
tx_ercot_county_summary.csv — 254 counties with ERCOT capacity, project counts, opposition flags
tx_dc_projects_classified.geojson — mappable version (load directly into Mapbox, QGIS, or kepler.gl)
analysis_summary.json — every stat from this post, machine-readable
README.md — field definitions, methodology, limitations
Build Your Own Version
You need:
1. ISO interconnection queue — Texas: ERCOT GIS reports (free, XLSX). Virginia/Mid-Atlantic: PJM (free, registration required). California: CAISO (free, annoying Excel format).
2. News scraper — SerpAPI ($10/month, 5K searches, good free tier). Query: "data center" + [county] + [state] + ("announced" OR "approved"). A few bucks got me +1000 articles. I also use Tavily much of the time.
3. Model router or API access — Clawdbot setup. Or just use Claude API directly ($3-15 per analysis). DeepSeek, Gemini, and Grok free tiers work fine for this.
4. County boundaries — US Census TIGER/Line shapefiles (free). Load with GeoPandas.
5. REIT properties — Scrape from investor pages (Equinix, Digital Realty, CyrusOne).
6. Mapbox GL JS — Free tier: 50K loads/month. Data-driven styling handles the choropleth. Turf.js for spatial ops.
If you build this for another state, send it to me. I want to see if the momentum > opposition pattern holds nationally.
What I’m Building Next
This is week 1 of the methodology series. New analysis every Sunday morning, posted to LinkedIn. The full methodology, data, and code land here on Friday. If there’s a dataset or market you want me to dig into, reply or DM.
Tools come and go. The problems they solve don’t.
—Yair






how did you source the data for the 345kv lines and such? we should collaborate, I can give you the data sets for every single DC build in North America
I'm interested to know your router setup and prompts.