Open-source ERP for construction estimation and project management
Professional BOQ, 4D/5D planning, AI-powered estimation, CAD/BIM takeoff — all in one platform.
▶ Watch the 12-min walkthrough · Demo · Documentation · Discussions · Report Bug
full_preview_compressed.mp4
🎬 1-minute teaser above · for the full 12-minute walkthrough → watch on YouTube · onboarding → BoQ → BIM → DWG → PDF → AI → dashboard
100% open source · 55,000+ cost items · AI estimation · 21 languages · Self-hosted
|
Getting Started |
Core Modules |
Planning & Delivery |
|
Field Tools |
Standards & Onboarding |
Technical |
|
Project & Community |
Compliance |
Legal & Privacy |
⭐ If you want to see new updates and database versions and if you find our tools useful please give our repositories a star to see more similar applications for the construction industry. Star OpenConstructionERP on GitHub and be instantly notified of new releases.
The second stable release — shipped April 20, 2026. Supersedes the entire 1.x line.
|
🔧 Reliability
🧩 Module Developer Experience
|
📊 CAD-BIM BI Explorer
✨ UX Polish
|
See the full v2.0.0 changelog or the v2.0.0 GitHub release.
Construction cost estimation software is expensive, closed-source, and locked to specific regions. OpenConstructionERP changes that.
| What you get | How it works |
|---|---|
| Free forever | AGPL-3.0 license. No subscriptions, no per-seat fees, no vendor lock-in. |
| Your data, your server | Self-hosted. Everything runs on your machine — nothing leaves your network. |
| 21 languages | Full UI translation: English, German, French, Spanish, Portuguese, Russian, Chinese, Arabic, Hindi, Japanese, Korean, and 10 more. |
| 20 regional standards | DIN 276, NRM 1/2, CSI MasterFormat, GAEB, ГЭСН, DPGF, GB/T 50500, CPWD, and more. |
| AI-powered | Connect any LLM provider (Anthropic, OpenAI, Gemini, Mistral, Groq, DeepSeek) for smart estimation. |
| 55,000+ cost items | CWICR database with 11 regional pricing databases (DACH, UK, US, France, Spain, Brazil, Russia, UAE, China, India, Canada). |
| Capability | OpenConstructionERP | Enterprise BIM Suites | CAD Takeoff Software | Legacy Estimating Tools | PDF Markup Tools |
|---|---|---|---|---|---|
| License | AGPL-3.0 (free) | Proprietary | Proprietary | Proprietary | Proprietary |
| Self-hosted / offline | ✔ | ✖ | ✖ | ⚠ partial | ✖ |
| Price | Free forever | ~€500/mo | ~€300/mo | ~€200/mo | ~€30/mo |
| AI estimation | ✔ 7 LLM providers | ✖ | ✖ | ✖ | ✖ |
| UI languages | 21 | 5 | 3 | 2 | 8 |
| Regional standards | 20 | 4 | 3 | 2 | — |
| BOQ editor | ✔ | ✔ | ✔ | ✔ | ✖ |
| CAD/BIM takeoff | ✔ RVT IFC DWG DGN | ✔ | ✔ | ✖ | ✔ PDF only |
| 4D/5D planning | ✔ | ✔ | ✖ | ✖ | ✖ |
| Cost database included | ✔ 55K+ items with rates | ✖ extra cost | ✖ extra cost | ✖ extra cost | ✖ |
| Resource catalog | ✔ 7K+ with prices | ✖ extra cost | ✖ | ✖ | ✖ |
| Validation engine | ✔ 42 rules | ⚠ limited | ✖ | ✖ | ✖ |
| REST API | ✔ full access | ⚠ limited | ✖ | ✖ | ✖ |
| Real-time collaboration | ✔ soft locks + presence | ✔ | ✖ | ✖ | ✖ |
| Open data export | ✔ GAEB, Excel, CSV, JSON, PDF | ⚠ limited | ⚠ limited | ⚠ limited | PDF only |
| BIM requirements (IDS/COBie) | ✔ import + export | ✖ | ✖ | ✖ | ✖ |
Comparison reflects typical category capabilities based on publicly available information as of Q1 2026. Pricing is approximate (per-seat, list price) and varies by vendor and region. OpenConstructionERP is an independent open-source project and is not affiliated with any commercial vendor in the categories above.
Each block below is a short GIF cut from the full walkthrough above — same order as the video, so you can jump to whichever workflow matters most. Prefer one continuous video? ▶ Watch the 12-minute walkthrough on YouTube.
OpenConstructionERP covers the full lifecycle — from first sketch to final tender submission:
Upload Convert Validate Estimate Tender
┌────────┐ ┌──────────┐ ┌───────────┐ ┌──────────┐ ┌──────────┐
│PDF/CAD │───────▶│ Extract │──────▶│ 42 rules │─────▶│BOQ Editor│─────▶│ Bid Pkgs │
│Photo │ │quantities│ │ DIN/NRM/ │ │ + AI │ │ Compare │
│Text │ │ + AI │ │ MasterFmt │ │ + Costs │ │ Award │
└────────┘ └──────────┘ └───────────┘ └──────────┘ └──────────┘
│
┌─────┴──────┐
│ 4D Schedule│
│ 5D Costs │
│ Risk Reg. │
│ Reports │
└────────────┘
Build professional cost estimates with a powerful BOQ editor:
- Hierarchical BOQ structure — Sections, positions, sub-positions with drag-and-drop reordering
- Inline editing — Click any cell to edit. Tab between fields. Undo/redo with Ctrl+Z
- Resources & assemblies — Link labor, materials, equipment to each position. Build reusable cost recipes
- Markups — Overhead, profit, VAT, contingency — configure per project or use regional defaults
- Automatic calculations — Quantity × unit rate = total. Section subtotals. Grand total with markups
- Validation — 42 built-in rules check for missing quantities, zero prices, duplicate items, and compliance with DIN 276, NRM, MasterFormat
- Export — Download as Excel, CSV, PDF report, or GAEB XML (X83)
Access the world's construction pricing data:
- CWICR database — 55,000+ cost items covering all major construction trades. Available in 9 languages with 11 regional price sets
- Smart search — Find items by description, code, or classification. AI-powered semantic search matches meaning, not just keywords ("concrete wall" finds "reinforced partition C30/37")
- Resource catalog — 7,000+ materials, equipment, labor rates, and operators. Build custom assemblies from catalog items
- Regional pricing — Automatic price adjustment based on project location. Compare rates across regions
- Import your data — Upload your own cost database from Excel, CSV, or connect via API
Extract quantities from any source — drawings, models, text, or photos:
- CAD/BIM takeoff — Upload Revit (.rvt), IFC, AutoCAD (.dwg), or MicroStation (.dgn) files. DDC converters extract elements with volumes, areas, and lengths automatically
- Interactive QTO — Choose how to group extracted data: by Category, Type, Level, Family. Format-specific presets for Revit and IFC
- Linked geometry preview — Click the BIM link badge on any BOQ position to see a 3D preview of linked elements with interactive rotate/zoom/pan controls
- BIM Quantity Picker — Select quantities (area, volume, length) directly from linked BIM elements and apply them to BOQ positions. The source parameter name is shown next to the unit
- DWG polyline measurement — Click any polyline in the DWG viewer to instantly see area, perimeter, and individual segment lengths with on-canvas labels
- PDF measurement — Open construction drawings directly in the browser. Measure distances, areas, and count elements with calibrated scale
- AI estimation — Describe your project in plain text, upload a building photo, or paste a PDF — AI generates a complete BOQ with quantities and market rates
- AI Cost Advisor — Ask questions about pricing, materials, or estimation methodology. AI answers using your cost database as context
- Cost matching — After AI generates an estimate, match each item against your CWICR database to replace AI-guessed rates with real market prices
Plan your project timeline and track costs over time:
- Gantt chart — Visual project schedule with drag-and-drop activities, dependencies (FS/FF/SS/SF), and critical path highlighting
- Auto-generate from BOQ — Create schedule activities directly from your BOQ sections with cost-proportional durations
- Earned Value Management — Track SPI, CPI, EAC, and variance. S-curve visualization shows planned vs actual progress
- Budget tracking — Set baselines, compare snapshots, run what-if scenarios
- Monte Carlo simulation — Risk-adjusted schedule analysis with probability distributions
Complete your estimation workflow:
- Tendering — Create bid packages, distribute to subcontractors, collect and compare bids with side-by-side price mirror
- Change orders — Track scope changes with cost and schedule impact analysis
- Risk register — Probability × impact matrix, mitigation strategies, risk-adjusted contingency
- Reports — Generate professional PDF reports, Excel exports, GAEB XML. 12 built-in templates
- Documents — Centralized file management with version tracking and drag-and-drop upload
Track and validate construction requirements with the EAC (Entity-Attribute-Constraint) system:
- EAC Triplets — Capture requirements as structured data: Entity (wall), Attribute (fire_rating), Constraint (≥ F90)
- 4 Quality Gates — Completeness → Consistency → Coverage → Compliance. Run sequentially to validate requirements
- BOQ Traceability — Link each requirement to BOQ positions for full traceability from spec to estimate
- Bulk Import — Import requirements from structured text (pipe-delimited format)
- Categories — Structural, fire safety, thermal, acoustic, waterproofing, electrical, mechanical, architectural
Annotate construction drawings and documents directly in the browser:
- 10 markup types — Cloud, arrow, text, rectangle, highlight, polygon, distance, area, count, stamp
- Custom stamps — Approved, Rejected, For Review, Revised, Final + create your own with logo and date
- Scale calibration — Set real-world scale per page for accurate measurements
- Markups List — Table view of all annotations with filters, search, and CSV export
- BOQ Integration — Link measurements directly to BOQ positions (quantity = measured value)
Track construction deficiencies from discovery to resolution:
- 5-stage workflow — Open → In Progress → Resolved → Verified → Closed
- Location pins — Mark exact position on PDF drawings (x/y coordinates)
- Priority levels — Low, Medium, High, Critical with color coding
- Photo attachments — Upload photos of deficiencies from the field
- Categories — Structural, mechanical, electrical, architectural, fire safety, plumbing, finishing
- PDF Export — Generate punch list reports for stakeholder review
- Verification control — Different user must verify (not the resolver)
| Standard | Region | Format |
|---|---|---|
| DIN 276 / ÖNORM / SIA | Germany / Austria / Switzerland | Excel, CSV |
| NRM 1/2 (RICS) | United Kingdom | Excel, CSV |
| CSI MasterFormat | United States / Canada | Excel, CSV |
| GAEB DA XML 3.3 | DACH region | XML |
| DPGF / DQE | France | Excel, CSV |
| ГЭСН / ФЕР | Russia / CIS | Excel, CSV |
| GB/T 50500 | China | Excel, CSV |
| CPWD / IS 1200 | India | Excel, CSV |
| Bayındırlık Birim Fiyat | Turkey | Excel, CSV |
| 積算基準 (Sekisan) | Japan | Excel, CSV |
| Computo Metrico / DEI | Italy | Excel, CSV |
| STABU / RAW | Netherlands | Excel, CSV |
| KNR / KNNR | Poland | Excel, CSV |
| 표준품셈 | South Korea | Excel, CSV |
| NS 3420 / AMA | Nordic countries | Excel, CSV |
| ÚRS / TSKP | Czech Republic / Slovakia | Excel, CSV |
| ACMM / ANZSMM | Australia / New Zealand | Excel, CSV |
| CSI / CIQS | Canada | Excel, CSV |
| FIDIC | UAE / GCC | Excel, CSV |
| PBC / Base de Precios | Spain | Excel, CSV |
Ensure your estimates meet regulatory standards before submission:
- 42 built-in rules across 13 rule sets — DIN 276, NRM, MasterFormat, GAEB, and universal BOQ quality checks
- Real-time validation — Run checks with Ctrl+Shift+V. Each position gets a pass/warning/error indicator
- Quality score — Overall BOQ quality percentage (0–100%) visible in the toolbar
- Drill-down — Click any finding to jump directly to the affected BOQ position and fix it
- Custom rules — Define project-specific validation rules via the rule builder or Python scripting
Get productive in under 10 minutes:
- Choose language — Select from 21 languages. The entire UI switches instantly
- Select region — Determines default cost database, currency, and classification standard
- Load cost database — One-click import of CWICR pricing data for your region (55,000+ items)
- Import resource catalog — Materials, labor, equipment, and pre-built assemblies
- Configure AI (optional) — Enter an API key from any supported LLM provider
- Create your first project — Set name, region, standard, and start estimating
👀 Prefer to see it first? ▶ Watch the 12-minute walkthrough on YouTube — onboarding → BoQ → BIM → DWG → PDF → AI → dashboard.
Requires Python 3.12+ (any path below). Check with
python --version.
pip install --upgrade openconstructionerp
openestimateThat's it. Installs backend + pre-built React frontend in one wheel (~7.4 MB), opens your browser at http://localhost:8080, creates a SQLite database, and seeds the three demo accounts on first boot. No Docker, no Node.js, no extra services. PyPI package.
Ubuntu / Debian users: on Ubuntu 23.04+ (including Ubuntu 26) and Debian 12+,
pip installdirectly to the system Python fails witherror: externally-managed-environment(PEP 668). Use a venv:sudo apt install -y python3.12 python3.12-venv python3.12 -m venv venv && source venv/bin/activate pip install --upgrade openconstructionerpFull Linux guide with system deps and troubleshooting: docs/INSTALL_LINUX.md.
If something looks off, run openestimate doctor for a per-check OK/WARN/ERROR report.
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/datadrivenconstruction/OpenConstructionERP/main/scripts/install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/datadrivenconstruction/OpenConstructionERP/main/scripts/install.ps1 | iexPicks Docker if installed, otherwise uv, otherwise pip. Runs at http://localhost:8080.
git clone https://github.com/datadrivenconstruction/OpenConstructionERP.git
cd OpenConstructionERP
make quickstartOpen http://localhost:8080 — builds everything in ~2 minutes.
git clone https://github.com/datadrivenconstruction/OpenConstructionERP.git
cd OpenConstructionERP
# Install dependencies
pip install -e ./backend[server]
cd frontend && npm install && cd ..
# Start (Linux/macOS)
make dev
# Start (Windows — two terminals)
# Terminal 1: cd backend && uvicorn app.main:create_app --factory --reload --port 8000
# Terminal 2: cd frontend && npm run devOpen http://localhost:5173 — for hacking on the codebase. Requires Python 3.12+ and Node.js 20+.
Three demo accounts are created automatically on first start. The default password is DemoPass1234! for all three — override with DEMO_ADMIN_PASSWORD / DEMO_ESTIMATOR_PASSWORD / DEMO_MANAGER_PASSWORD env vars before the first boot if you need a custom one (e.g. for any internet-exposed deployment).
| Account | Password | Role | |
|---|---|---|---|
| Admin | demo@openestimator.io |
DemoPass1234! |
Full access |
| Estimator | estimator@openestimator.io |
DemoPass1234! |
Estimator |
| Manager | manager@openestimator.io |
DemoPass1234! |
Manager |
Demo accounts include 5 pre-loaded projects from Berlin, London, New York, Paris, and Dubai with complete BOQs, schedules, and cost models.
Security note. For any internet-exposed deployment, set the three
DEMO_*_PASSWORDvariables to strong, unique secrets, or disable demo accounts entirely withDISABLE_DEMO_ACCOUNTS=1. Do not reuse passwords from examples, screenshots, or earlier versions of this README.
| Layer | Technology | Purpose |
|---|---|---|
| Backend | Python 3.12+ / FastAPI | Async API, Pydantic v2 validation, modular architecture |
| Frontend | React 18 / TypeScript / Vite | SPA with code splitting, 21 language bundles |
| Database | PostgreSQL 16+ / SQLite (dev) | OLTP with JSON columns, zero-config SQLite for development |
| UI | Tailwind CSS / AG Grid | Professional data grid, responsive design, dark mode |
| AI | Any LLM via REST API | Anthropic, OpenAI, Gemini, Mistral, Groq, DeepSeek |
| Vector Search | LanceDB (embedded) / Qdrant | Semantic cost item search, 384d or 3072d embeddings |
| CAD/BIM | DDC cad2data | RVT, IFC, DWG, DGN → structured quantities |
| i18n | i18next + 21 language packs | Full RTL support (Arabic), locale-aware formatting |
flowchart TB
UI["Frontend SPA<br>React 18, TypeScript, Vite<br>AG Grid, Tailwind, PDF.js"]
subgraph Backend ["FastAPI Backend, 60+ modules"]
CORE["Core<br>Module loader, Event bus, Hooks, RBAC, Validation"]
BIZ["Business modules<br>BOQ, Costs, Schedule, 5D, Takeoff<br>Tendering, Risk, Reports, Catalog<br>Requirements, Markups, Punch List, BIM Hub, CDE"]
AIS["AI services<br>AI Chat SSE, AI Estimate, Cost Intelligence<br>7 LLM providers"]
CORE --> BIZ
CORE --> AIS
end
subgraph Data ["Data layer"]
PG[("PostgreSQL 16<br>SQLite in dev")]
VEC[("Vector DB<br>LanceDB / Qdrant")]
S3[("MinIO / S3<br>files, CAD, PDFs")]
end
subgraph Pipelines ["Pipelines"]
CAD["DDC cad2data<br>RVT, IFC, DWG, DGN to canonical JSON"]
CV["CV / OCR<br>PaddleOCR 3.0, YOLOv11<br>PDF takeoff, symbol detection"]
end
UI -- "REST, SSE" --> CORE
BIZ --> PG
BIZ --> VEC
BIZ --> S3
CAD --> BIZ
CV --> BIZ
classDef fe fill:#1f6feb,stroke:#0d3885,color:#fff;
classDef be fill:#238636,stroke:#104822,color:#fff;
classDef ai fill:#db6d28,stroke:#7a3c14,color:#fff;
classDef data fill:#8250df,stroke:#4a2c7d,color:#fff;
class UI fe
class CORE,BIZ be
class AIS ai
class PG,VEC,S3,CAD,CV data
Plain-text version (for screen readers or non-Mermaid renderers)
┌──────────────────────────────────────────────────┐
│ Frontend (React SPA) │
│ TypeScript · Tailwind · AG Grid · PDF.js │
└──────────────────┬───────────────────────────────┘
│ REST + SSE
┌──────────────────┴───────────────────────────────┐
│ Backend (FastAPI) │
│ 60+ auto-discovered modules · Plugin system │
├──────────────────────────────────────────────────┤
│ BOQ · Costs · Schedule · 5D · Validation · AI │
│ Takeoff · Tendering · Risk · Reports · Catalog │
│ Requirements · Markups · Punch List · BIM Hub │
├──────────────────────────────────────────────────┤
│ Database (PostgreSQL / SQLite) │
│ Vector DB (LanceDB / Qdrant) │
│ CAD Converters (DDC cad2data) │
│ CV Pipeline (PaddleOCR + YOLOv11) │
└──────────────────────────────────────────────────┘
OpenConstructionERP is built and maintained by the community. If you find it useful:
- ⭐ Star this repo — helps others discover the project
- 💬 Join Discussions — ask questions, share ideas, help others
- 🐛 Report issues — help us improve
- 💼 Professional consulting — custom deployment, training, enterprise support
OpenConstructionERP includes security hardening for production deployments:
- Path traversal protection on all file download endpoints
- CORS wildcard blocking in production mode
- Bounded input validation on bulk price operations
- Generic error responses to prevent account enumeration
- Production startup checks for secrets, credentials, and database configuration
Do not open public GitHub issues for security vulnerabilities. Report privately via GitHub Security Advisories or by email to info@datadrivenconstruction.io. See SECURITY.md for the full coordinated-disclosure policy, response timelines, supported versions, scope, and regulatory-reporting obligations under EU Regulation 2024/2847 (Cyber Resilience Act).
AI suggestions produced by this software are preliminary estimates. A qualified construction-estimation professional must verify all quantities, classifications, and costs before any contractual or tender-submission use. See NOTICE and TERMS.md §4.
All product names, logos, and trademarks referenced in this repository are property of their respective owners. Any comparative references to commercial categories or products are made for fair comparative purposes based on publicly available information. OpenConstructionERP is an independent project and is not affiliated with, endorsed by, or sponsored by any third-party trademark owners. Full attributions in NOTICE.
This software contains cryptographic functionality (bcrypt password hashing, JWT signing). Export is classified under US EAR 740.17 (TSU mass-market exemption) and EU Regulation 2021/821 (dual-use). The Software is not authorised for download, use, or re-export to jurisdictions subject to comprehensive OFAC sanctions. See NOTICE for the full notice.
AGPL-3.0 — see LICENSE. Third-party attributions in NOTICE.
You can freely use, modify, and distribute this software. If you modify and deploy it as a service, AGPL §13 requires you to make the corresponding source code available under the same licence.
For commercial licensing without AGPL obligations, see COMMERCIAL-LICENSE.md or contact info@datadrivenconstruction.io.
- PRIVACY.md — GDPR / UK DPA / CCPA / LGPD baseline
- TERMS.md — terms of use for the hosted instance
- COOKIES.md — browser storage inventory
- SECURITY.md — responsible disclosure

Unlock the Power of Data in Construction
🚀 Move to full-cycle data management where only unified
structured data & processes remain and where 🔓 your data is yours















