Functional DemoSaaS

Exterior Calculator

Profit calculator and estimate builder for roofing, siding, and gutter contractors.

PriceCraft estimating landing page headlined Calculate Exterior Project Costs with Precision, with trial buttons and feature cards for roofing, siding, and gutter pricing
PriceCraft landing page

What it solves

Exterior contractors often quote jobs without a clear view of their true profit after materials, labor, and overhead. Pricing decisions get made on gut feel, and margins erode when expenses like sales commission and office costs are not accounted for per job. This app opens directly into a calculator so a contractor can see profit dollars, margin, and break-even instantly.

Built for Exterior service contractors doing roofing, siding, and gutters.

Overview

Exterior Calculator computes job profit for roofing, siding, gutters, or a multi-service combination. Contractors configure their own material catalogs, labor rates, and percentage-based expense lines per service and save them as reusable templates, then enter quantities to see revenue, material and labor cost, expense breakdown, gross and net margin, and break-even price. It has grown beyond a calculator into an estimate builder with saved estimate templates, photos, and public shareable estimate pages. An insurance scope upload uses OpenAI to extract line items from PDF or image scope documents, and the app includes jobs, Stripe subscription billing, an embeddable widget, and CRM sync.

What this demonstrates

Implements a configurable financial model that turns per-service material, labor, and percentage-expense inputs into gross profit, net margin, and break-even in real time. Builds a document-extraction pipeline that reads insurance scope PDFs, falling back to OpenAI vision when a document is scanned or image-based. Adds Stripe subscription billing, public tokenized estimate sharing, an embeddable widget, and org-scoped multi-tenancy.

What makes it different

It opens straight into the calculator, no dashboards in the way, and shows profit, margin, and break-even the instant you enter a job.

  • Calculator firstThe app lands on the calculator with a small settings area, not a dashboard.
  • Contractor-configured variablesMaterials, labor rates, and expense lines are defined per service by the company.
  • Multi-service estimatesSelect two or more services and get a combined profit summary.
  • Reusable templatesSave variable sets like Roofing Retail or Siding Premium and load them per job.
  • True profit visibilityPercentage expense lines are applied against revenue to show net margin and break-even.

Core capabilities · 15

  • Profit calculator

    Roofing, siding, gutters, or multi-service with instant profit output.

  • Material catalog

    Per-service materials with unit cost, unit type, and sell price.

  • Labor rates

    Per-service labor priced per square, square foot, linear foot, or item.

  • Expense lines

    Percentage-of-revenue overhead lines like sales commission and office cost.

  • Service templates

    Saveable variable sets per service type with default waste percentage.

  • Estimate builder

    Assemble full customer estimates from calculator inputs.

  • Estimate templates

    Reusable estimate layouts with an editor.

  • Public estimate

    Tokenized shareable estimate page for the customer.

  • Estimate photos

    Attach and caption photos on an estimate.

  • Insurance scope extractionScope Extraction

    Upload a scope PDF or image and extract line items via OpenAI.

  • Jobs

    Track jobs alongside their estimates.

  • Subscription billing

    Stripe checkout, price IDs, and webhook-driven subscription state.

  • Embeddable widget

    A widget build for embedding the calculator elsewhere.

  • CRM sync

    Push and pull job data with CRM Empire via API key.

  • Org settings

    Organization-scoped configuration and approval ratings.

How it works

  1. Pick one or more services
  2. Enter quantities and waste percentage
  3. Select materials from the catalog
  4. Apply labor rates and expense lines
  5. Read revenue, costs, margins, and break-even
  6. Save as a template or build a full estimate
  7. Share a public estimate or sync the job to the CRM

How the profit number works

Net profit and margin

  • Total revenue

    Entered directly or computed from per-unit sell prices.

  • Material cost

    Unit cost times quantity for selected materials.

  • Labor cost

    Per-unit labor rate applied to job quantities.

  • Expense lines

    Percentage-of-revenue overhead deductions.

  • Gross profit and margin

    Revenue less material and labor cost.

  • Net profit and margin

    Gross profit less percentage expense lines.

  • Break-even revenue

    Minimum price at which the job does not lose money.

Key screens

  • CalculatorService picker, inputs, and live profit output.
  • Estimate BuilderAssemble a customer estimate.
  • Estimate TemplatesManage and edit reusable estimate templates.
  • JobsList of tracked jobs.
  • Job DetailJob and estimate details.
  • Public EstimateCustomer-facing shareable estimate.
  • PricingSubscription plan selection.
  • WidgetEmbeddable calculator surface.
  • SettingsMaterials, labor, expenses, and org configuration.

Data model

  • Organization
  • OrgSettings
  • User
  • ServiceTemplate
  • MaterialItem
  • LaborRate
  • ExpenseLine
  • Estimate
  • EstimateTemplate
  • EstimatePhoto
  • ScopeExtraction
  • Job
  • Subscription
  • SubscriptionEvent
  • ApprovalRating

Screens · 7

PriceCraft dashboard for Demo Roofing Co with tiles for total jobs, completed, $67,000 revenue, and 34.9% avg margin, plus recent jobs and jobs-by-status counts
PriceCraft jobs dashboard
PriceCraft estimate calculator with a roofing template, total job price field, and roofing inputs for quantity, waste, material, and labor items; results panel empty
New estimate calculator, blank inputs
PriceCraft calculator filled with a $30,000 roofing job showing a Profit Summary with $22,185 gross profit, expenses, $16,785 net profit, break-even, and price-drop scenarios
Calculator with profit summary
PriceCraft Jobs list with status counts (1 draft, 0 quoted, 0 in progress, 2 completed) and job rows showing price and margin, one with a Mark Quoted button
Jobs list with margins
PriceCraft job detail Est. 1 Ron marked Completed, showing a Financial Summary ($30,000 revenue, $16,700 gross profit, $11,300 net profit) and calculation inputs for siding, gutters, and roofing
Completed job financial detail
PriceCraft Settings with price-drop scenario percentages, an App Theme picker showing seven color themes, and estimate template cards for Full Exterior, Gutters, and Siding
Settings: themes and templates
PriceCraft settings Materials and Labor Rates tables listing roofing, siding, and gutter items with per-unit cost and sell prices and edit/delete actions
Materials and labor rate tables

How it is built

A React and Vite front end calls an Express API backed by PostgreSQL through Prisma. Uploaded scope documents are parsed for text or, when scanned, sent to OpenAI vision for extraction, with images handled by sharp. Stripe manages subscriptions and an embeddable widget plus CRM sync connect it to the wider app cluster.

APIs and services

OpenAI
Stripe

Classification

Industries
Home Services

Related work

Supplement Tracker

Functional Demo

Insurance supplement management for roofing contractors, with adjuster communication and AI.

Building something with similar Financial Modeling, Document Generation, Document OCR and Extraction functionality?

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

Start a project