Product

Everything you need to run a commercial job. One workspace, three pillars.

Construpilot collapses the marketplace, document hub, and project finance into a single tenanted workspace. No more juggling PlanHub for bids, Procore for documents, and QuickBooks for accounting.

Marketplace

Find the right sub, level the bids, award the work.

Post a project, build bid packages by trade, and invite subs from a nationwide pool. Level the bids side-by-side, then award — the contract is one click away.

  • 39 CSI MasterFormat trades

    Pre-seeded catalog, Divisions 02–33. Subs surface for their primary trade automatically.

  • Bid invitations + RFIs

    Invite platform subs or by raw email. Subs raise RFIs against the package; you answer in-app.

  • Side-by-side leveling

    Stats (count / low / avg / spread), delta vs low, shortlist / reject / award actions.

  • Award → contract

    Awarding a bid auto-drafts the subcontract from the package — no re-entry.

construpilot.com/projects/.../bid-packages

Project · Downtown Office Renovation

Drywall — Building A, Levels 3–5

Awarded

Bids

5

Low

$142k

Average

$158k

Spread

$31k

SubAmountvs lowStatus
Sunshine Drywall Co$142,000lowestShortlisted
Atlantic Interiors$151,200+$9,200Submitted
Reliant Build Group$158,400+$16,400Awarded
Gulfstream Finishes$167,500+$25,500Submitted
construpilot.com/projects/.../documents

Plans v3

5 documents · visible to invited subs

Visible to subs
  • A-101 — Floor Plan Level 3.pdf4.2 MB · today
  • CGC permit — fire alarm.pdf880 KB · yesterday
  • IMG_0421.jpg2.1 MB · 2d ago
  • M-201 — HVAC Schedule.pdf3.0 MB · 4d ago
  • Spec section 09 24 — Stucco.pdf1.4 MB · 1w ago

Document Hub

One canonical place per project. Browser-grade preview.

Plans, RFIs, submittals, permits, photos — all uploaded direct-to-R2 from the browser, organized in folders, previewed inline. Granular sharing per folder to invited subs.

  • Folder tree per project

    Create, rename, nest. Each folder has a per-folder toggle for sub visibility.

  • Direct-to-R2 uploads

    Browser PUTs straight to Cloudflare R2 via signed URLs. 100 MB cap per file, configurable.

  • PDF & image preview

    Inline iframe preview for PDFs, native render for images. Short-lived signed download URLs.

  • RLS-isolated by org

    Postgres RLS is the source of truth: subs only see what their invite + folder visibility allows.

Project Finance

Revenue, expense, budget vs actual — per project.

Each org keeps its own ledger, even on a shared project. Recorded transactions are immutable; corrections post offsetting rows. Every state change writes to audit_log.

  • Per-project P&L

    Revenue and expense roll up by project; net updates live as transactions land.

  • Budget vs actual

    Set budgets per category; variance turns red automatically when you blow the line.

  • Immutable ledger

    Recorded transactions never edit — reversals create offsetting rows. Full audit history.

  • 8 default categories

    Materials, Labor, Equipment, Subcontractor, Permits, Insurance, Overhead, Other — extensible.

construpilot.com/projects/.../finance

Revenue

$842,500

Expense

$612,300

Net (P&L)

+$230,200

Budget vs actual
CategoryBudgetActualVariance
Materials$220,000$198,400+$21,600
Labor$140,000$152,800-$12,800
Subcontractor$310,000$241,000+$69,000
Permits & Fees$18,000$17,200+$800

The flow

From posting a project to wiring the last payment — one workspace.

Each step lives in the same tenanted workspace, with shared identity, audit, and finance rolling up automatically.

  1. 01

    Post project

    Create the project + bid packages by trade.

  2. 02

    Invite + bid

    Invite subs (platform or email). They submit bids.

  3. 03

    Level + award

    Compare side-by-side. Award one — others auto-rejected.

  4. 04

    Contract + COs

    Auto-drafted from the award. Change orders bilateral.

  5. 05

    Payments + finance

    Record payments, roll into project P&L automatically.

Plus the unglamorous stuff that matters

The boring details, done right.

Magic-link auth

No passwords to leak. Supabase Auth with custom Resend SMTP.

Stripe Connect (Express)

Subs onboard payouts in 2 min — test mode wired today.

Daily logs

Per-project daily entry: weather, crew, hours, delays, safety.

RFIs

Auto-numbered (RFI-001). Sub asks, GC answers, both notified.

Notifications

In-app bell + counts; ready for email/SMS hooks.

Audit log

Every payment, contract, and finance state change is recorded.

CSI MasterFormat catalog

39 default trades, Divisions 02–33, extensible per org.

State-licensed contractor support

License number + state on org. State + zip on every project.

Multi-tenant RLS

Postgres row-level security is enforced at the database, not the app.

Stop running your jobs out of spreadsheets.

Spin up your workspace, post a project, and invite your subs in under 10 minutes.