Functional DemoAnalytics System

AI City Expansion Engine

Location intelligence that scores ZIP codes by industry-specific expansion opportunity.

AI City Expansion Engine — cover

What it solves

Businesses deciding where to open their next location have to stitch together fragmented research across Census data, Google Maps, job boards, labor reports, competitor research, and real estate analysis. That manual work is slow and produces no single, comparable measure of opportunity. There is no clear answer to where a business should expand next, and why.

Built for Franchises, multi-location operators, local service businesses, real estate site-selection teams, private equity operators, agencies, and SMB owners evaluating expansion markets.

Overview

The platform turns fragmented location data into one industry-specific opportunity score per ZIP code. A user selects an industry, searches a region or scans nationwide, and sees color-coded ZIP opportunity zones on a map. Clicking a ZIP opens a breakdown across demographic fit, demand, competition gap, labor availability, cost, growth, and risk, each weighted per industry, plus an AI explanation grounded in the stored inputs. Users can filter, rank, save, compare markets, and export reports. Scores carry confidence levels so missing data lowers confidence instead of fabricating precision.

What this demonstrates

Builds a geospatial scoring engine over ZCTA polygons with per-industry weighted metrics and confidence scoring. Runs multiple external data pipelines (demographics, business patterns, competitors, labor, economic, real estate) that normalize into structured records. Adds an AI explanation layer constrained to stored score inputs so it cannot invent numbers.

What makes it different

This is not a generic dashboard. It is a market expansion decision engine that turns fragmented data into one clear expansion score by ZIP code.

  • Simple front, sophisticated backPick an industry, pick a market, see where to expand and why.
  • Industry-specific scoringEach industry has its own weights, demographics, competitor categories, and labor roles.
  • Deterministic, explainable scoresScore inputs are stored; breakdowns match stored inputs.
  • Confidence over false precisionMissing data reduces confidence instead of inventing precision.
  • AI grounded in stored dataAI explanations use only stored score inputs and never invent numbers.
  • Geospatial by designPostGIS-backed ZIP polygons, containment, radius, and territory queries.

Core capabilities · 17

  • Geospatial ZIP/ZCTA Layer

    Load, store, and render ZIP polygons from Census shapefiles with viewport-optimized geometry.

  • Industry Configuration System

    Seed 20 industries with weighted metrics, NAICS codes, competitor categories, and labor mappings.

  • Demographic Data Pipeline

    Pull and normalize Census ACS population, income, age, homeownership, and education by ZIP.

  • Business Density Pipeline

    Add Census Business Patterns establishment counts and NAICS-based saturation baselines.

  • Competition Intelligence Pipeline

    Discover competitors via Google Places and Foursquare with rating, review, and weakness scoring.

  • Labor & Wage Intelligence

    Add BLS OEWS labor availability, wage cost, and hiring difficulty per industry occupation.

  • Economic Trends Layer

    Integrate FRED and BEA unemployment, income growth, and economic strength signals.

  • Real Estate & Cost Layer

    Model commercial rent pressure and location affordability with industry cost assumptions.

  • Opportunity Scoring Engine

    Combine normalized metrics into a weighted, industry-specific 0-100 expansion score.

  • Map-First UI

    Full-screen interactive map with search, industry selector, filters, and layer toggles.

  • ZIP Detail Panel

    Decision-quality breakdown of every score component, top competitors, and AI explanation.

  • Filters & Layer Controls

    Refine markets by population, income, competition, labor, cost, growth, and risk.

  • Ranked Markets Table

    Bottom drawer ranking best ZIPs with score, demand, competition, labor, and cost.

  • Save & Compare Markets

    Build a shortlist and compare 2-5 ZIPs side-by-side with an AI comparison summary.

  • AI Explanation Engine

    Generate grounded ZIP summaries, risk notes, and expansion memos from score inputs.

  • Expansion Report Generator

    Produce investor-ready PDF reports with recommendations, comparisons, and data sources.

  • Admin Data Operations

    Manage data source status, refresh jobs, API usage, and score recalculation.

How it works

  1. Select an industry
  2. Search a city, state, metro, ZIP, or nationwide view
  3. Watch the map color ZIP zones by opportunity score
  4. Click a ZIP to open the analysis panel
  5. Review demand, demographic, competition, labor, cost, growth, and risk scores
  6. Read the AI explanation
  7. Save markets and compare ZIPs
  8. Export the expansion report

How the score works

Opportunity Score

  • Demographic Fit Score20%

    Match between local population, income, and age and the industry's ideal customer.

  • Demand Signal Score20%

    Industry-specific demand indicators for the ZIP.

  • Competition Gap Score20%

    Underserved demand based on competitor density and weakness.

  • Labor Availability Score15%

    Supply of relevant workers and hiring difficulty.

  • Cost Favorability Score10%

    Rent pressure and occupancy affordability.

  • Growth Trend Score10%

    Regional income, population, and economic growth.

  • Risk Adjustment5%

    Downward adjustment for market risk factors.

Key screens

  • Map DashboardMap-first view with industry selector and search.
  • ZIP Detail PanelScore breakdown, competitors, and AI explanation.
  • Ranked Markets DrawerSortable table of top ZIPs beneath the map.
  • Compare ViewSide-by-side comparison of saved markets.
  • Saved MarketsShortlisted expansion targets with notes.
  • Expansion ReportExportable PDF report.
  • Admin Data OperationsData source health and refresh controls.

Data model

  • Industry
  • IndustryMetricWeights
  • ZCTA
  • ZctaDemographics
  • ZctaBusinessPatterns
  • ZctaCompetitors
  • ZctaLaborMetrics
  • ZctaEconomicMetrics
  • ZctaRealEstateMetrics
  • ZctaScores
  • SavedMarket
  • MarketReport
  • DataSourceRefreshLog
  • Organization
  • User

Screens · 4

Expansion Engine map view of the US with a "Zoom in to load ZIP zones" prompt and a bottom table ranking top NY ZIP markets by opportunity score.
National opportunity map
Expansion Engine ZIP-level choropliath map of the NYC area colored by opportunity score, with a right panel detailing ZIP 11371's score breakdown and market profile.
ZIP 11371 score detail
Expansion Engine map zoomed into NYC harbor ZIP zones for real estate brokerages, with ZIP 11370 selected and its weighted score breakdown shown in the side panel.
ZIP 11370 selected on map
Expansion Engine operations console showing system health tiles, per-layer data coverage across 20+ business categories, and a data-source refresh table all marked success.
Operations console

How it is built

A Next.js/React frontend renders a MapLibre map of ZIP zones; the backend uses Prisma over PostgreSQL with import scripts that ingest and normalize each data source, a deterministic scoring engine, and an Anthropic-backed explanation service. Auth.js handles authentication and Upstash provides optional distributed rate limiting.

APIs and services

Anthropic
Auth.js
MapLibre
Google Places
Foursquare
U.S. Census Bureau
Bureau of Labor Statistics
FRED
RentCast
Upstash

Classification

Industries
ConstructionReal Estate

Related work

Material price-shock monitoring that ties supplier price movement to margin exposure and pricing recommendations.

Discover evidence-backed micro-SaaS opportunities from live market signals across industries and regions.

Building something with similar Geospatial Analysis, Analytics, AI Automation functionality?

Start a project and reference this one — the conversation begins with what you have already seen.

Start a project