FieldCamp

Construction Software — Data Model | FieldCamp

How a construction business runs in FieldCamp — multi-phase projects, change orders, subcontractors, daily logs, and permits built on the core records.

A construction company does not run a service call. It runs a build — a ground-up or major project that moves through phases, draws on a roster of subcontractors, consumes materials and equipment, and is documented every working day from site mobilization through closeout.

FieldCamp models that. Your Customers, Requests, Estimates & Invoices, Jobs, and Visits already carry the owner, the bid, the field schedule, and the billing.

On top of that, a construction setup adds the records a build needs and core has no home for: a Project that runs the whole job, change orders, a subcontractor roster, a daily log per working day, and permits.

This is the bigger, new-build cousin of the general contracting setup — same core records, same custom objects, with the daily log and the materials-and-equipment view pulled to the front.

What the core already gives you

Most of a construction workflow is already wired into the core records. Keep them as-is and add the project layer on top.

  • The owner book — a Customer carries a separate property address and billing address, the lead source, and the account history, so owners, developers, and repeat clients live in one place.
  • The bid front end — a Request captures the inquiry and the site walk, then converts into an Estimate. A construction bid is usually a multi-option proposal: the Good / Better / Best scope is one estimate with selectable options, plus a deposit and an approval step.
  • Billing — an Invoice handles deposits, payment terms, purchase-order numbers, overdue reminders, and card or online payment.
  • The field schedule — a Job is the scheduled work, carried out as one or more Visits. A multi-day phase is one visit per day, each with crew assignment, on-site check-in and check-out, and a signature-gated finish step.
  • On-site data capture — pre-pour checklists, photo-required inspection sign-offs, a safety walk, and a closeout punch list are captured as job forms, not loose fields.
  • The price book — materials, labor rates, equipment, and subcontracted scopes live in the price book with vendors and cost ladders, and feed every estimate, invoice, and change order.

So the project layer is additive. Core handles the owner, the bid, the billing, the field schedule, and the forms; the specialized objects handle the project, the change orders, the subcontractors, the daily logs, and the permits.

What construction adds

Each item below is a custom object built on FieldCamp's customization engine — its own fields, its own links to the core records, its own stages where it needs them, and its own record page assembled from building blocks.

Together they capture what defines the construction business: a long-running project spine measured in percent complete, a paper trail of scope changes, a roster of trades, and a dated record of what happened on site every working day.

Project — the build spine

The Project is the record that runs a build from a signed contract through closeout.

It exists because a core Job models one scheduled work order, while a build is a multi-phase job with its own long lifecycle, its own contract value, and its own percent-complete.

It carries the project name, type (residential or commercial), work type (new construction, ground-up, remodel, addition, or tenant improvement), the site address, the contract value and signed date, the start and target-complete dates, a percent-complete figure, the permit-required flag, project photos and documents, and notes.

It links to the rest of the model: to the Customer it belongs to, to the Estimate and Invoice that handle the bid and billing, to the Jobs that produce the visits and crews, to its Change Orders, Permits, and Daily Logs, to the Subcontractors on the roster, and to the team member running as project manager.

A percent-complete field can be a formula — for example, the value billed to date over the contract value plus approved change orders — so the figure updates itself rather than being retyped against a phase milestone.

The project board is a drag-across-stages view of every active build — the same idea as a construction PM board, rebuilt natively. Its page also shows key numbers like contract value, change-order total, and percent complete, and a cost view comparing estimated against actual.

Change Order — the scope-change record

A Change Order is a single amendment to the contract: added scope, a credit, or a schedule shift, priced and approved on its own before it folds into the contract value.

It is its own record because each change carries a number, a description, a cost impact, a schedule impact, an approval state, and the signed authorization — too structured to bury on the project, and too consequential to leave as a note.

FieldField typeWhat it holds
CO NumberTextThe change order's identifier on the project.
DescriptionMulti-line textThe scope being added, credited, or revised.
ReasonSingle choiceOwner request, design change, field condition, or code requirement.
Cost ImpactCurrencyThe dollar change to the contract value (can be a credit).
Schedule Impact (days)NumberDays added to or removed from the schedule.
StatusPipeline stageIts stage through the approval workflow.
AuthorizationFileThe signed change-order document.

A Change Order belongs to its Project, and on approval it converts into an Estimate so the added scope is quoted and billed through the standard money model.

Its record page shows a status banner, the cost and schedule impact, a breadcrumb to its Project, and the signed authorization.

Subcontractor — the trade on the roster

A Subcontractor is one trade partner the builder hires — electrical, plumbing, framing, concrete, drywall, mechanical. It is a standalone record so a sub's license, insurance, and contact details follow the company across every project, not retyped per job.

FieldField typeWhat it holds
Company NameTextThe subcontractor company's name.
TradeSingle choiceElectrical, Plumbing, HVAC, Framing, Drywall, Concrete, Steel, or Other.
Contact · Phone · EmailText · Phone · EmailThe sub's point of contact.
License NumberTextThe trade license on file.
Insurance ExpiryDateWhen the certificate of insurance lapses.
W-9 on FileCheckboxWhether the tax document is collected.
StatusPipeline stageWhether the sub is active, on hold, or archived.

A Subcontractor links to the Projects it works on and the Jobs it staffs. Its page can use a compliance block that counts down to the insurance-expiry date, so a sub whose coverage is about to lapse surfaces before they set foot on site.

Because the Subcontractor is a standalone record, "show me every sub whose insurance expires this month" is a one-tap view. License, insurance, and W-9 status follow the company — not the job.

Daily Log — the dated site record

The Daily Log is the record construction lives by that general service work does not: a dated entry of what happened on site each working day.

It is a child object under the Project, so one project gathers an ordered run of logs from mobilization to closeout.

It earns its own record because the daily report is the project's backbone evidence — manpower, equipment, weather, deliveries, and delays. When a dispute, a schedule claim, or a delay analysis comes up months later, the answer is in the logs.

FieldField typeWhat it holds
Log DateDateThe working day this entry covers, one per day.
Weather · TemperatureSingle choice · NumberSite conditions and the temperature range that day.
Crew on SiteNumberHead count of the builder's own crew working that day.
Subcontractors on SiteMulti-line textWhich trades were present and their head count.
Equipment on SiteMulti-line textMachinery and rentals running that day, with hours.
Materials DeliveredMulti-line textWhat arrived, the supplier, and the quantity.
Work CompletedMulti-line textTasks done and the areas they happened in.
Delays · IssuesMulti-line textThe cause and impact: weather, a sub no-show, a permit hold, a utility conflict, a material shortage.
Site PhotosFileTimestamped progress photos — the strongest evidence in a daily report.

Because it parents to the Project, each Daily Log inherits the project, the site address, and the owner without retyping. Its record page shows a breadcrumb to its Project, the weather and manpower fields, the delay note, and a photo gallery.

Structured safety or inspection sign-offs that happen on site are better captured as a job form on the day's visit and surfaced alongside the log.

Permit — the authorization with its own clock

A Permit is the city or county authorization a build depends on. It runs on the authority's clock, not yours — a phase can be underway while its permit is still applied-for — so it gets its own lifecycle, separate from the project's.

Permits are a full example in their own right. The Permits data model covers the permit number, issuing authority, fees, dates, and the applied-to-closed lifecycle in detail.

On a construction project, a Permit parents to the Job or the Project the way Equipment parents to a customer, and one build can carry several at once — building, electrical, plumbing, mechanical, and grading.

A Customer owns Projects. Each Project pulls in the core bid and billing records, the Jobs that produce its visits and crews, its change orders, permits, and daily logs, and the subcontractors staffing the work — with a team member as project manager.

The project lifecycle

A Project moves through a named build lifecycle — far longer than a service call. The diagram shows the phases a construction project runs through, from the bid to closeout.

A few of these stages carry requirements before a project can move on. Marking a project Contract Signed asks for the contract value and signed date and shows a confirmation.

Moving into Closeout can ask for the punch-list sign-off, and on residential work, an owner signature.

Along the way, the project keeps itself in sync. Marking it Contract Signed spins up the first Job. Reaching Permitting, Punchlist, or Closeout sends a notification to the office, the project manager, or the owner.

The phase names are yours to rename. A custom-home builder might run Sitework, Foundation, Frame, Dry-In, Finish; a commercial builder might run Sitework, Structure, Envelope, Interiors — the same pipeline, relabeled to the way the shop talks about its work.

Each phase is a milestone you can tie a progress draw to.

Progress billing, milestone draws, retainage, and the schedule of values sit outside the core invoice model. A builder's standard cash flow is a monthly progress draw against a schedule of values, with five to ten percent retainage held back until closeout, and on larger jobs an AIA G702 / G703 payment application. FieldCamp's Invoice handles deposits, payment terms, purchase orders, and partial payments — so you can bill a project as a sequence of progress invoices and store an approved change order's value before it bills. What is not built here is the formal schedule of values, automatic retainage withholding and release, milestone-draw schedules tied to phases, or AIA G702 / G703 form output. Track progress draws as sequential invoices; the formal draw schedule and retainage ledger live outside this model.

Residential vs commercial / new build

One model serves both. The differences are a handful of fields and stages that turn on or off per segment — not a separate build.

Residential / new build

A custom home or a spec build is one owner, one site, one Project. Selections and allowances drive much of the back-and-forth, change orders are frequent and homeowner-signed, and billing is a deposit plus progress payments charged as the phases complete. The daily log runs from foundation to final, and the owner signs off on the punch list at closeout.

Commercial / ground-up

A ground-up or tenant-improvement build is longer, carries more permits, runs a deeper subcontractor roster, and logs heavier equipment and material deliveries each day. Billing leans on monthly progress draws with retainage and, on larger jobs, AIA payment applications. The schedule is contract-driven, with a project manager and superintendent on the team filing the daily log.

The Project, Change Order, Subcontractor, and Daily Log records serve both — fill the fields each segment needs. The permit-heavy, retainage-driven commercial path and the selection-heavy residential path are the same objects, configured differently.

Built for any size. A two-crew homebuilder and a multi-site commercial GC run on the same records. The Project, Change Order, Subcontractor, Daily Log, and Permit layer is there whether you run one build or twenty — and it sits on the same transaction spine the smallest service shop uses.

Built on the customization engine

None of these records are a separate product bolted on.

The Project, Change Order, Subcontractor, and Daily Log are custom objects with their own fields; the build lifecycle and the change-order approval steps are stages and workflows with their own requirements and automations; and each record page is arranged from building blocks like the project board, the cost view, the compliance countdown, and the photo gallery.

Permits are the Permits custom object parented to the build.

Rename a stage, add a field, or rearrange a page, and the model bends to how your shop actually runs — without touching the transaction spine underneath.

Coming from Buildertrend

If you are moving from Buildertrend, the construction-management platform, the structure here will feel familiar. Buildertrend organizes a build around a job with a schedule, change orders, selections, daily logs, a budget, and draws.

FieldCamp keeps the same shape — it just splits it across the core records and a few custom objects.

The crosswalk below maps the records you know to where they live in FieldCamp.

In BuildertrendIn FieldCamp
Lead / CustomerA Customer — the owner or developer, with separate property and billing addresses and lead source.
Job / ProjectA Project custom object — the build spine that runs from contract through closeout.
Schedule / phasesStages and workflows on the Project, with the day-to-day field schedule carried as Visits on its Jobs.
Change OrdersA Change Order custom object — numbered, priced, approved, then converted into an estimate.
SelectionsA Selection custom object — the owner-facing options and allowances on a build.
SubcontractorsA Subcontractor custom object — the trade roster, with license, insurance, and W-9 status following the company.
Daily LogsA Daily Log custom object — a dated entry per working day for crew, weather, deliveries, delays, and site photos.
Budget / cost codesJob costing on Jobs — line items, cost vs. price, and an estimated-against-actual view per job.
Bids / Purchase OrdersEstimates drawn from the price book, with vendor and cost ladders behind the line items.
Invoices / DrawsEstimates & Invoices — deposits, progress invoices, payment terms, and PO numbers.
Documents / photosJob forms and files attached to the Project, Job, or Visit, plus the daily-log photo gallery.
WarrantyA custom object or a closeout stage on the Project, depending on how you track it.

What you gain

The records carry over, but the engine underneath is open.

Every object above — Project, Change Order, Selection, Subcontractor, Daily Log — is a custom object with its own fields, and each lifecycle is a set of stages and workflows you name to match how your shop runs a build.

So a phase a custom-home builder calls Dry-In and a commercial builder calls Envelope are the same stage, relabeled — not a setting you work around.

One honest difference. Buildertrend has a deep progress- and draw-billing engine, full job budgets, and a client portal built around them. FieldCamp builds the project structure and the records that hang off it, but it bills through a sequence of invoices rather than a draw-schedule engine. As the note above explains, the formal schedule of values, automatic retainage, and milestone-draw schedules tied to phases sit outside this model — track progress draws as sequential invoices.

See also

More in the FieldCamp data model.

On this page