Build Flows

Explore a sample month-end report

This is what Monday morning looks like after the build

A month-end executive report for a fictional contractor, built the way we build them: pulled nightly from Procore, the ERP and P6, checked before it publishes, and traceable from every headline number back to the source record. Change the month, filter by project manager or region, open a job, and click any KPI to see where it comes from.

Month-end executive report

Ridgeline Builders · Sep 2026

Fictional contractor, synthetic data

Click any tile to trace it back to its source. Sparklines show the months up to the selected one; deltas are vs the prior month.

Active jobs

8 jobs · health = worse of margin status and schedule float

JobPMRegionRevised contract% completeGP % at completionFloat (days)Health
J-2415Tom BrennanNorth$22,300,00031%-1.6%-15At risk
J-2401Dana OrtizNorth$19,300,00068%8.5%6Watch
J-2412Dana OrtizNorth$6,980,00095%10.3%3Watch
J-2506Tom BrennanSouth$14,750,00060%11.2%8Watch
J-2405Marcus LeeSouth$12,950,00052%12.7%20On track
J-2409Priya NairSouth$26,600,00083%14.5%30On track
J-2418Marcus LeeSouth$9,400,00071%12.8%23On track
J-2502Priya NairNorth$4,350,00045%14.9%12On track

Select a job to see its WIP line, schedule, and open exceptions.

Refresh passedMonth-end snapshot Sep 30, 2026Sources: Procore, ERP, P66 warnings routed to

Fictional contractor, synthetic data. Definitions follow our metric dictionary and the WIP reporting guide.

What's behind it

The report is the last step. The trust comes from the three before it.

  1. Step 1

    Your systems

    Procore for contracts, forecasts, commitments and RFIs. Your ERP for job cost, AR and AP. P6 or your scheduler for milestones and float.

  2. Step 2

    Nightly refresh

    Raw copy → cleaned and matched → report-ready. Each night we copy every system as is, clean it, and match each project and cost code across systems, then shape it for the report.

  3. Step 3

    Checks before publish

    Data-quality rules run on every load. Blocking failures stop the refresh and keep yesterday's numbers; warnings publish and land on the exceptions worklist with an owner.

  4. Step 4

    The report

    Power BI pages that share one set of metric definitions, with month-end snapshots so last quarter's numbers stay as reported.

For IT: a medallion lakehouse (bronze, silver, gold) in Microsoft Fabric with a star-schema semantic model in Power BI, plus project and cost code crosswalks.

The real reports this sample mirrors

Screenshots from our builds. Client names, amounts and record details are blurred; the WIP page uses sample data. See all 22 pages.

Want this on your data?

Tell us which systems you run and which report hurts most.

In 30 minutes we'll talk through your systems, your current month-end process, and what a first version on your data would include.

Frequently asked questions

Is this a real contractor's data?

No. Ridgeline Builders is fictional and every number is synthetic, generated so the totals tie across pages. The structure mirrors the reports we have built: portfolio, WIP schedule, billing and cash, schedule, data quality and an unresolved-records worklist.

Is the real thing built in this web page?

No. Our reporting builds run in Microsoft Fabric and Power BI, or your existing data platform. This page is a lightweight stand-in so you can click through the experience without a login.

What does "trace any number" mean in a real build?

Every metric is defined once and every row keeps where it came from and when it loaded, so a controller can go from a headline figure to the jobs, then to the records in Procore or the ERP behind it. Our data-quality pages include an invoice-level trace for exactly this reason.

Which systems does it work with?

The pattern is the same whatever the stack. We have built it on Procore with Sage 100 Contractor, QuickBooks Online and Outbuild, and integrate with ERPs such as Viewpoint Vista and Spectrum and schedulers such as Primavera P6. Your first conversation is about which systems you run and which report hurts most.