Data Sources
Where each data layer comes from and how often it refreshes.
| Layer | Source | Refresh cadence |
|---|---|---|
| Permits | County/city building permit portals, named per jurisdiction | Nightly |
| Hail/storm reports | NOAA Storm Prediction Center | Per event |
| Property records | County Central Appraisal Districts, named per county | Periodic |
| Contractor licenses | TDLR and other state licensing boards | Periodic |
| Flood zones | FEMA National Flood Hazard Layer | As FEMA updates |
| Environmental facilities | EPA Facility Registry Service | Periodic |
| Demographics | US Census ACS | Annual |
| Broadband availability | FCC Broadband Data Collection | Biannual |
On storm (roof-damage) lists, an important honesty rule: we do not estimate roof age; we check the permit record. A property counts as "work not yet done" when no re-roof permit is on file for it, not because a model guessed the roof's age.
Source lineages for specific jurisdictions are listed on the data catalog. Records are provided as-is; see the Terms of Service.
Importing a Storm List into your CRM
Every Storm List CSV has the same 9 columns in this order:
street_address, city, zip, lat, lng, hail_size_in, storm_date, lead_score, days_since_storm.
Map them into your CRM's lead-import fields once and reuse the same mapping for every future list.
| CRM | Import path | Field mapping |
|---|---|---|
| AccuLynx | Leads > Import Leads > Upload CSV | street_address → Address, city/zip → City/Zip,
lat/lng → Latitude/Longitude (AccuLynx geocodes if left blank, but
mapping these skips a redundant geocode call), lead_score → a custom Lead Score
field (create one if you don't have it), storm_date/hail_size_in →
custom fields or the Notes field concatenated. |
| JobNimbus | Contacts > Import > CSV | street_address, city, zip map directly to JobNimbus's Address block.
hail_size_in and storm_date map cleanly to two custom Contact fields
(Settings > Custom Fields > Contacts) — create "Hail Size" (number) and "Storm Date" (date)
once, then every future import reuses them. |
| SPOTIO | Leads > Bulk Import | lat/lng matter most here since SPOTIO's canvassing map plots by
coordinate — map them directly rather than relying on SPOTIO's own geocoder.
days_since_storm is useful as a custom sort/filter field for prioritizing the
freshest damage first. |
| SalesRabbit | Leads > Import Leads | street_address, city, zip → the standard address fields;
lead_score → SalesRabbit's lead status/priority field, so higher-scored leads
surface first on the canvassing map. |
Column mappings are stable across every county and every storm window — the same CSV shape ships every time, so a saved import template in your CRM never needs to be redone.
Storm List upgrades
Storm List purchases can include optional upgrade columns. Property owner (owner of record name and mailing address) and Property details (year built, building square feet, market value, assessed value) come from county appraisal district rolls — public record.
Fields may be blank where a county does not publish them: some appraisal districts do not publish an owner mailing address, and a handful do not publish the owner name at all. Where a column is blank, the county did not provide the value; we do not fill it from a third-party model.
The year built column is the year the home was built, not the roof. It says nothing about the roof's age — see our roof-age honesty note above.
Webhook / Zapier-compatible alerts
POST /v1/alerts supports a hail_leads watchlist: set
source_type: "hail_leads" and filters: {"county": "Tarrant"} (any storm-list
catalog county) with a webhook_url, and PermitLookup POSTs a JSON payload
({alert_name, source_type, match_count, matches, run_at}) to that URL every time a new
hail lead appears in that county — pipe it into Zapier's Catch Hook trigger to auto-create CRM leads
without a manual CSV import. Alerts also support daily/weekly email digests
(email_notify: true) using the same table shown above.
Roofers running a CRM already listed here: PermitLookup has applied to the JobNimbus partner directory for a native integration listing — check back or ask support@ecbtx.com for status.