State construction defect statute of limitations and statute of repose periods
Can I still sue for this construction defect? Every US state sets two independent clocks: the statute of limitations (SOL — typically 2-6 years from discovery of the defect) and the statute of repose (SOR — typically 6-15 years from substantial completion, regardless of discovery). Both must be alive to file a claim. California gives 4 years SOL latent / 10 years SOR. Colorado gives 2 years SOL / 6 years SOR. New York has NO statute of repose for buildings. Getting this wrong means losing the right to file entirely. One record per state, sourced from the state's own statute. Answers 'construction defect statute of limitations by state', 'statute of repose for construction in Texas', 'how long can I sue for a building defect'. Adjacent to mechanics-lien-deadlines and construction-retainage-limits.
The data
| State | SOL — contract (years) | SOL — tort (years) | Statute of repose (years) | SOR trigger event | Discovery rule | Statutory citation |
|---|---|---|---|---|---|---|
| Arizona | 6 | 2 | 8 | substantial completion | Yes | ARS §12-552 |
| California | 4 | 10 | substantial completion | Yes | CCP §337.15 | |
| Colorado | 2 | 2 | 6 | substantial completion | Yes | CRS §13-80-104 |
| Florida | four | four | 7 | the date the authority having jurisdiction issues a temporary certificate of occupancy, a certificate of occupancy, or a certificate of completion, or the date of abandonment of construction if not completed, whichever date is earliest | Yes | Fla. Stat. §95.11(3)(b) |
| Georgia | 6 | 4 | 8 | substantial completion | Limited | OCGA §9-3-51 |
| Illinois | 4 | 4 | 10 | completion | Yes | 735 ILCS 5/13-214 |
| Maryland | 3 | 3 | 20 | Yes | MD Code Cts. & Jud. Proc. §5-108 | |
| Massachusetts | 6 | 3 | 6 | earlier of opening or substantial completion | Yes | MGL c. 260 §2B |
| Michigan | 3 | 6 | occupancy, use, or acceptance | MCL §600.5839 | ||
| Minnesota | 2 | 2 | 10 | substantial completion | Yes | Minn. Stat. §541.051 |
| Nevada | 6 | 3 | 6 | substantial completion | NRS §11.202 | |
| New Jersey | 6 | 6 | 10 | substantial completion | Yes | NJSA §2A:14-1.1 |
| New York | 6 | 3 | no SOR for buildings | No | CPLR §213 | |
| North Carolina | 3 | 3 | 6 | later of substantial completion or last specific act of negligence | Yes | NCGS §1-50(a)(5) |
| Ohio | 8 | 2 | 10 | substantial completion | Limited | ORC §2305.131 |
| Oregon | 6 | 2 | 10 | substantial completion | Yes | ORS §12.135 |
| Pennsylvania | 4 | 2 | 12 | lawful occupancy or use | 42 Pa.C.S. §5536 | |
| Texas | 4 | 2 | 10 | substantial completion | Limited | CPRC §16.008–009 |
| Virginia | 5 | 5 | substantial completion | Va. Code §8.01-250 | ||
| Washington | 6 | 3 | 6 | substantial completion or termination of services | Yes | RCW §4.16.310 |
Where this came from
Every record above links the page it was taken from and quotes the sentence that states it. These are the 2 sources this dataset was assembled from.
- terrapincg.comhttps://terrapincg.com/news/construction-defect-statute-of-limitations-by-state-2026
- flsenate.govhttps://www.flsenate.gov/Laws/Statutes/2024/95.11
Machine-readable
- data.jsonThe whole dataset — every record with its source URL and source quote.
- Open Knowledge Format bundleOne JSON object per line — every record's frontmatter and quoted span exactly as it is held here, in one fetch.
- data.csvThe same records as one flat table, for a spreadsheet or a dataframe. The last four columns are the source URL, the quoted sentence it was read from, the date we last checked it, and which columns are our reading rather than the page's words.
- How this is made and checkedWhat "verified against source" does and does not mean.
From your own code
Same records, same quotes, without scraping the page: refsource is on PyPI and npm. Each value comes back carrying the URL it was read from and the sentence on that page that states it — .source and .quote sit on the value itself rather than in a side channel, so the checking step is available instead of skipped.
pip install refsource
refsource lookup state-construction-defect-limitations-periods state=Arizona
npx -y refsource lookup state-construction-defect-limitations-periods state=Arizona
Set your AI assistant up to use this
Two files and no account. Put this in .mcp.json at the root of your project — Claude Code, Cursor, Windsurf, VS Code and Codex all read that file — and your assistant can look this dataset up instead of recalling it. The server is remote, keyless and read-only.
{
"mcpServers": {
"referencesource": {
"type": "http",
"url": "https://referencesource.org/mcp"
}
}
}Add to Cursor · or, on the command line: claude mcp add --transport http referencesource https://referencesource.org/mcp --scope project
Then one line in the project's CLAUDE.md or AGENTS.md, so the assistant knows when to reach for it:
When a question needs "State construction defect statute of limitations and statute of repose periods", call the referencesource MCP server at https://referencesource.org/mcp (tool `search_records`, dataset_slug `state-construction-defect-limitations-periods`) instead of answering from memory — every record it returns carries its source URL and a verbatim quote from that page.What each tool does, and the servers built over single registers: Connect your AI assistant.