PermitStats — Software Requirements Document
Software Requirements Document

Permit Stats

Market Intelligence for the Building Industry
Version 1.0
Date May 27, 2026
Prepared By Richie Rossouw — Thunder Media
For Rony K Sebastian — Softnotions

PermitStats transforms raw municipal building permit data into actionable sales intelligence — surfacing leads, tracking contractors, and mapping market activity for roofing distributors, manufacturers, and insurance companies.

🎯

01 — Project Overview

Two products. One data ecosystem.

$B
Addressable Market
400+
Target Reps per Distributor
10K+
Small Municipalities (US)
2
Products in Suite
📊

PermitStats

SaaS intelligence platform that aggregates public building permit data and surfaces it as actionable sales leads. Target users: roofing distributors, material manufacturers, sales reps, and insurance companies.

🏛️

ProcessMyPermit

Simple permit submission and management system sold to small municipalities still using paper-based processes. Solves the data accessibility problem at the source and feeds structured data into PermitStats.

⚠️

02 — The Problem

Four pain points driving this opportunity

Inaccessible Municipal Data

Municipalities (especially under 50,000 pop.) use paper or outdated systems. Permit data is technically public but practically impossible to access at scale.

No Lead Intelligence

Building material reps literally drive streets to find active jobs. There's no automated way to identify prospects from permit activity in their territory.

No Market Transparency

Distributors and manufacturers can't see their true market share — how many roofing jobs are happening, who's pulling permits, and what the total contract value is.

Insurance Blind Spots

Insurance companies manually verify permit status for claims. A unified data source would let them instantly pull permit history tied to any property or claim.

👥

03 — User Types

Defined user roles across both products

PermitStats Users

User Type Description Primary Need Plan Tier
Sales Rep Field rep at roofing distributor or manufacturer See new permits in territory, identify prospects, get alerts Pro
Distributor Manager Regional manager at supply company Market share analysis, rep performance, territory oversight Enterprise
Manufacturer Rep Brand rep (e.g. GAF, CertainTeed) Market demand data, contractor relationships, brand loyalty tracking Enterprise
Insurance Adjuster Claims or underwriting professional Permit history for any property, storm correlation data Pro
Admin PermitStats internal staff Data management, user management, market configuration Internal

ProcessMyPermit Users

User Type Description Primary Need Access
Contractor Licensed contractor filing permits Submit permits online, track status, pay fees Free / Per-submission
Municipality Clerk Building department staff Receive, review, approve or deny permits digitally Municipal license
Municipality Admin City IT / admin Configure permit types, fees, workflows, staff accounts Municipal license
Homeowner Residential property owner Check permit status on their property Public search
🖥️

04 — PermitStats Screens & Features

All screens — MVP phase marked in green

📊

Dashboard MVP

Home screen overview
Summary metrics: permit count, total value (7/30/90 days)
Trade vertical filter (Roofing, Solar, Electrical, Plumbing, HVAC, etc.)
Active market selector (1–3 markets per plan)
Date range filter: 7 / 30 / 90 / 180 / custom

Live Permit Feed MVP

Real-time permit stream
Real-time list: permit #, type, address, contractor, value, date
Sortable and filterable columns
Click-through to full permit detail page
Export to CSV
🔍

Contractor Intelligence MVP

Profile any contractor
Search by name or license number
Profile: all permits, total value, active markets
Top contractors ranked by permit volume
"Is this my customer?" flag for distributor reps
📈

Market Analysis MVP

Volume and value trends
Permit volume over time chart (bar + line)
Total market value by trade vertical
Storm correlation overlay (permit spikes vs weather)
Competitor activity comparison
🌩️

Storm Map Phase 2

Weather + permit correlation
Interactive map with hail/wind events
Permit surge overlay tied to storm date + radius
Storm details: intensity, radius, estimated damage $
Permits filed within 90 days of event
🏠

Property Lookup Phase 2

Address-level history
Enter any address → full permit history
For: insurance pre-inspection, contractor prospecting
Homebuyer due diligence use case
🔔

Alerts & Notifications MVP

Automated lead alerts
Notify when specific contractor files a permit
Notify when permit volume spikes in a market
Email or in-app delivery
🔗

CRM Integration Phase 2

Push leads to your CRM
Push new permit leads to Salesforce / HubSpot
Match permits to existing accounts automatically
Notify rep inside CRM when client files a permit
🏛️

05 — ProcessMyPermit Screens & Features

Municipal permit submission system — Phase 2

🧑‍💼

Contractor Portal

Online permit filing
Online permit application form (replaces paper)
Document upload: plans, licenses, insurance certs
Real-time status tracking and notifications
Online payment of permit fees
Full permit history and resubmission
🏢

Municipality Dashboard

Review and approval workflow
Incoming permit queue with review workflow
Approve / deny with comments, request more info
Issue permit number + digital permit document
Inspection scheduling and tracking
🔎

Public Permit Search

Citizen-facing lookup
Any citizen searches by address, no login required
See: permit type, status, contractor, value
Feeds data into PermitStats pipeline
⚙️

Municipality Admin

Configuration and reporting
Configure permit types and required fields
Set fee schedules and payment options
Staff account management and roles
Reports: permits by type, revenue, processing time
🗄️

06 — Data Model

Key entities and fields

📋

Permit

permit_number
permit_type / trade_vertical
status
address / city / zip / lat-lng
contractor_name / license
project_description
job_value
filed_date / issued_date
source (municipality)
🧑‍🔧

Contractor

name / license_number
phone / email
total_permits
total_value
markets_active
linked permits (array)
🗺️

Market

city / state
radius (miles)
data_sources configured
active subscribers
last_sync timestamp
🌩️

Storm Event

date / type (hail/wind)
intensity / radius
center_lat / center_lng
estimated_damage_value
linked permits (within radius)
👤

Subscriber

name / email / company
role / user_type
subscription_plan
active_markets (array)
notification_prefs
billing_status
🚀

07 — MVP Scope (Phase 1)

Goal: 3–5 paying customers live in DFW roofing market

✅ Include in MVP

Dashboard with live permit feed
Contractor search and profile
1 active market: Dallas, TX — roofing
Date range filter (7 / 30 / 90 days)
User login and subscription billing
Email alerts for new permits
Market analysis chart

○ Defer to Phase 2

Storm map
CRM integration (Salesforce / HubSpot)
Multi-market support
Property lookup
ProcessMyPermit module
Insurance company features
API / data export partners
💰

08 — Business Model

Revenue streams across both products

📊 PermitStats

$299–$799 /mo per user
Target: Distributors, manufacturers, reps, insurers
Pro plan: $299/mo — 1 market, 1 user, basic alerts
Business plan: $599/mo — 3 markets, 5 users, full analytics
Enterprise: custom — unlimited markets, 400+ rep teams
Near-term target: $500–1,000 MRR from first 3 customers

🏛️ ProcessMyPermit

$500–$2K /mo per municipality
Target: Municipalities under 50,000 population
Setup fee: $2,500–$5,000 per municipality
Monthly SaaS license per jurisdiction
10 municipalities spoken to — immediate interest confirmed
Strategic: feeds clean data into PermitStats pipeline
⚙️

09 — Technical Requirements

Architecture and infrastructure needs

🌐
Web app, desktop-first, mobile-responsive
🔌
REST API backend for data ingestion + serving
🗃️
Scalable DB — millions of permit records
🤖
Automated scrapers per municipality portal
🗺️
Mapping: Leaflet or Google Maps integration
🔐
Multi-tenant secure architecture + RBAC
💳
Subscription billing (Stripe)
📧
Email notifications pipeline
🔗
CRM API integrations (Phase 2)
Note from Rony's recommendation: Architecture should be human-led and scalable. AI tools used to reduce development effort (target 40–50% cost reduction) but not to replace solid architectural decisions. System must remain maintainable after launch.

🖥️ Live Prototype Available

Current UI prototype built on Base44 — demonstrates all screens and data structure. Real permit data pipeline from Dallas Accela portal currently in development.

View Prototype →