Canyonland Technologies Inc.

Project 3 · Budget against actual

Two systems that describe the same thing and disagree.

Projects 1 and 2 each read a single source. Most real work is not that. It is a budget and a payroll that ought to reconcile, share no usable key, count in different units, and measure populations that are not the same — where the job is not to produce a number but to work out which number the question actually wants.

Loading

Runs entirely in your browser against a cached snapshot of two City of Chicago datasets. Nothing is uploaded, nothing is stored, and no language model is involved — every figure below is computed from the data each time the page loads.

Loading the snapshot…

Source · before anything else

Two datasets, one publisher, no shared key.

Both are published by the City of Chicago. Neither was built to be joined to the other, which is the ordinary situation and the reason this stage exists.

Loading…

Stage 01 · Extract

What each side actually contains.

The budget describes funded positions. The payroll describes money that moved. Those are different things, and most of the difficulty downstream comes from that sentence being easy to skip past.

Loading…

Stage 02 · Land

The join returns nothing, and says so quietly.

This is the failure worth seeing. An inner join on the obvious keys matches zero rows — and produces an empty chart rather than an error, which is how it survives review.

Loading…

Stage 03 · Model

Deciding what a position is, and what headcount means.

Two definitions have to be pinned down before any comparison is meaningful, and neither is given by the data. Both are stated here and used consistently below.

Loading…

Stage 04 · Build

Budget beside actual, department by department.

With the join made and the units settled, the comparison is finally possible — and the most important column is the one saying how much of each department the comparison covers.

Loading…

Ask · across every stage

Including one we decline to answer.

The question this data is most often asked is the one it cannot support. Saying so is more useful than a number that would be quoted in a budget hearing.

Loading…

If this is your problem

Two systems, one number, and a meeting on Thursday.

Every organisation has a pair of systems that disagree and a report that has to reconcile them anyway. The work is rarely the join. It is knowing which of the two is answering the question you were actually asked, and being able to show why.

Tell us what's stuck — the first consultation is free, or book a time directly.