Schedule grid and Gantt
A scheduling engine you can trust at full job size.
Forward and backward pass CPM, with total float, free float, driving links, constraints, calendars and a predecessor language — under a grid that keeps up with typing on schedules of a thousand activities and more.

The grid
It behaves like the spreadsheet you left. The model underneath does not.
Everything a scheduler does forty times an hour — edit a duration, fill a column, paste a block, undo the last three things — works at the speed of typing, while every keystroke lands in a real critical-path model rather than in a cell.
The columns this job needs
Show what this job actually tracks and size each column to its content. You are not working around a fixed set of seven, and a column you resized stays that width in the view you saved.
Excel in, Excel out
Copy a block of cells out to a spreadsheet and paste one back in. Fill down and fill right work the way your hands already expect them to.
Undo that means it
Ctrl+Z across single-cell edits, fills and pastes. An edit that has not settled yet is queued and replayed rather than quietly lost.
Saved views
A view carries its columns, grouping, filters and sort together. Save it, name it, and hand it to the person who needs that particular slice.
Tags and dimensions
Slice the schedule by anything.
A schedule is not one outline. It is an area schedule to the superintendent, a trade schedule to the subcontractor, a procurement schedule to the buyer, and a phase schedule to the owner — all at once, from the same activities.
Build as many custom dimensions as the job actually needs — area, phase, trade, procurement, bid package, whatever you manage by — and tag an activity with as many as apply. There is no cap on how many dimensions a project carries or how many values a dimension holds.
Grouping that stacks
Group by area, then by trade, then by phase. Reorder the stack and the grid regroups around it — the same activities, a different question.
Filters that compose
Filters combine rather than replace one another, so narrowing to one area and one trade is one view, not two round trips.
Saved and shared
Save the whole arrangement as a view and hand it over. The person you send it to opens the slice you were looking at.
The Gantt
CPM scheduling that shows what is driving your date.
The grid and the Gantt are two panes over one model, split however you want them. Every bar, arrow and float value comes out of the engine run, so the picture and the numbers cannot disagree.
The chain that owns your date
Criticality is computed per link, not guessed from a bar's colour. The links the engine found driving carry the accent, so the chain that owns the finish date is visible rather than inferred.
Float, both kinds
Total float and free float per activity, from a real backward pass — with the late dates behind them, not a rule of thumb.
Baselines and variance
Capture a baseline and compare against it. More than one, because a job that has been re-baselined twice still has to answer questions about the first one.
Zoom from a day to a quarter
Move between day, week, month and quarter scales, with non-working days shaded so a bar that spans a shutdown week reads as what it is.
Scale and safety
Full job size, with two people typing at once.
The schedules that break other tools are the ones Brikt is built for: a thousand activities and more, open in front of several people on the same morning.
A thousand activities and more
Scrolling and typing stay responsive at 1,000+ activities — in the plain grid, in the grouped view and in the Gantt alike. Full job size, not demo size.
Edit together, live
You can see who else is in the schedule, and their changes arrive without anyone refreshing. Real-time collaboration with presence, on the same model you are editing.
Nobody silently overwrites anyone
If someone changed the same field while you were typing, Brikt says so calmly and shows you what changed, rather than picking a winner and telling neither of you. Protection is per field, so two people can work the same activity at once.
Honest progress
Days left, not a percent somebody guessed at.
Percent complete is the number everyone reports and nobody believes. It is a feeling typed into a box, and once it is in the schedule the forecast is built on it.
So Brikt asks for the other one. Your field says how many working days are left on the work in front of it — the number it actually has — and the engine takes the forecast from there. Percent complete is derived from remaining duration, in that direction and never the other one.
It is a small change in what gets typed and a large change in what the schedule is worth by month four.
Schedule health
The schedule tells you when it is drifting.
Ten of the DCMA 14-point checks run against your schedule — open ends, leads and lags, hard constraints, high float, negative float, long durations — alongside Brikt’s own checks for out-of-sequence progress and duplicate logic. Findings are surfaced for you to look at; Brikt does not grade your schedule.
A check that has nothing to measure says so. It never reports a comfortable zero it did not compute.
What-if and scenario analysis
Scenario analysis on the schedule itself, not on a copy of it.
What happens if the steel slips two weeks? Answering that honestly is the reason schedulers keep a folder of duplicate files — and the reason nobody is ever quite sure which one the last conversation was about.
Stage the change on your real schedule instead. It runs against the same engine as the schedule, returning the dates the staged change would move under the current model: every activity that shifts behind it, and what it does to the finish. Then keep it or drop it — nothing is committed until you say so, and a discarded scenario leaves nothing behind.

See it on your own schedule.
Bring a job you are running now. We will open it in Brikt rather than showing you a demo project.