EstimationPro AI EstimationPro AI

Construction Cost API

The first free public API for U.S. construction and remodeling costs. 385 pricing items across 32 trades, regional multipliers for 50 metros, and real-time material price trends. No API key required.

385
Pricing Items
32
Trades
50
Metro Areas
$0
Cost

Quick Start

Base URL: https://estimationpro.ai/api/v1

# Get roofing costs in Los Angeles
curl "https://estimationpro.ai/api/v1/costs?trade=roofing&zip=90210"

# Get the cost index for all metros
curl "https://estimationpro.ai/api/v1/index"

# Check material price trends
curl "https://estimationpro.ai/api/v1/trends"

Get the Data

Three ways to access U.S. construction cost data, all free:

{}

API

Call endpoints directly from your app. JSON responses, no API key required.

View endpoints ↓
📊

Kaggle

Download the full dataset as CSV. 385 items, regional multipliers, and the EPCI cost index.

Get on Kaggle →
🔧

Embed

Embed interactive cost calculators on your site. 40+ tools for contractors and homeowners.

Browse calculators →

Rate Limits

All endpoints are rate-limited per IP address. Limits reset at midnight UTC.

EndpointLimit
Most endpoints100 requests/day
/api/v1/index500 requests/day

Rate limit headers (X-RateLimit-Remaining, X-RateLimit-Reset) are included in every response.

Response Format

All responses are JSON with a data field containing the result and a meta field with attribution:

{
  "data": { ... },
  "meta": {
    "source": "EstimationPro.ai Construction Cost API",
    "url": "https://estimationpro.ai/api",
    "methodology": "BLS OEWS + PPI + contractor feedback",
    "updated": "2026-03-18",
    "license": "Free for non-commercial use with attribution"
  }
}

Endpoints

GET /api/v1/trades 100/day

Returns all 32 construction trades with item counts.

Example Response

{
  "data": {
    "trades": [
      { "trade": "concrete", "itemCount": 12 },
      { "trade": "roofing", "itemCount": 15 },
      { "trade": "electrical", "itemCount": 18 }
    ],
    "totalItems": 385
  },
  "meta": { "source": "EstimationPro.ai Construction Cost API", ... }
}
Try it live →
GET /api/v1/costs 100/day

Returns all pricing items for a trade. Optionally adjusted for regional pricing by ZIP code or state.

Parameters

NameRequiredDescription
trade Required Trade name (e.g., "roofing", "concrete", "electrical")
zip Optional ZIP code for regional price adjustment
state Optional State code (e.g., "CA", "TX") for regional adjustment

Example Response

{
  "data": {
    "trade": "roofing",
    "location": "California",
    "multiplier": 1.18,
    "itemCount": 15,
    "items": [
      {
        "id": "architectural-shingle",
        "description": "Architectural shingle, installed",
        "unit": "sq ft",
        "low": 4.13,
        "typical": 5.90,
        "high": 8.85,
        "volatility": "standard",
        "lastVerified": "2026-02-15",
        "regionallyAdjusted": true
      }
    ]
  }
}
Try it live →
GET /api/v1/costs/:itemId 100/day

Returns full detail for a specific pricing item including sources.

Parameters

NameRequiredDescription
itemId Required Item ID (e.g., "ready-mix-standard", "romex-12-2")

Example Response

{
  "data": {
    "trade": "concrete",
    "id": "ready-mix-standard",
    "description": "Ready-mix concrete (3000-4000 PSI), delivered",
    "unit": "cubic yard",
    "low": 110,
    "high": 200,
    "typical": 150,
    "tolerance": 0.35,
    "regional": true,
    "volatility": "volatile",
    "sources": ["Angi 2026 concrete cost guide", "HomeAdvisor 2025-2026 data"],
    "lastVerified": "2026-02-15"
  }
}
Try it live →
GET /api/v1/index 500/day

Returns the EstimationPro Cost Index for 51 states and 50 metro areas. EPCI = 100 at national average. Includes project-specific costs for bathroom remodels, kitchen remodels, deck builds, interior paint, and roof replacements.

Example Response

{
  "data": {
    "meta": { "methodology": "EPCI = 100 * regional multiplier..." },
    "index": {
      "metro:new-york-newark-jersey-city": {
        "name": "New York-Newark-Jersey City, NY-NJ-PA",
        "epci": 118,
        "projects": {
          "bathroom_remodel": { "low": 14160, "typical": 23600, "high": 35400 }
        }
      },
      "state:TX": { "name": "TX", "epci": 90, ... }
    }
  }
}
Try it live →
GET /api/v1/trends 100/day

Returns commodity prices (copper, aluminum, lumber, steel), FRED economic indicators (construction spending, housing starts, building permits, Case-Shiller), and BLS PPI series data.

Example Response

{
  "data": {
    "commodities": [
      { "commodity": "copper", "latestPrice": 12986.61, "unit": "USD/metric ton", "trendDirection": "up" }
    ],
    "economicIndicators": [
      { "seriesId": "HOUST", "title": "Housing Starts", "latestValue": 1487, "yearOverYearChange": 9.5 }
    ],
    "ppiSeries": [
      { "id": "WPU08", "name": "Lumber & Wood Products", "changePercent": 3.2 }
    ]
  }
}
Try it live →
GET /api/v1/multipliers 100/day

Returns the regional cost multiplier for a ZIP code or state. Use this to adjust national average prices to local market rates.

Parameters

NameRequiredDescription
zip Optional ZIP code (one of zip or state required)
state Optional State code (one of zip or state required)

Example Response

{
  "data": {
    "location": "98101",
    "resolvedState": "WA",
    "region": "Pacific",
    "multiplier": 1.21,
    "label": "Washington (Pacific region)",
    "stateDetail": { "multiplier": 1.07, "region": "pacific" },
    "regionDetail": { "name": "Pacific", "multiplier": 1.13, "laborMultiplier": 1.21 }
  }
}
Try it live →

Data Sources

Kaggle Dataset

The full construction cost dataset is available on Kaggle for download, analysis, and use in your own projects. Includes 385 pricing items across 32 trades, regional multipliers for all 50 states, and the EPCI cost index for 50 metro areas.

View on Kaggle →

GitHub

This API is listed in the public-apis directory, the largest open-source list of free APIs on GitHub. Star or follow the PR to stay updated.

View on GitHub →

Attribution

This API is free for non-commercial use. Please include attribution when displaying data from this API:

Data from <a href="https://estimationpro.ai/api">EstimationPro.ai Construction Cost API</a>
Create estimates 10x faster with AI