Skip to content

Capture and compare baselines

All plansMember

A baseline is a frozen snapshot of the project at a moment in time: its tasks, dates, dependencies, and progress as they stood when you captured it. Without one, “are we on track?” is a debate; with one, it’s a number. The teams that get re-approved for budget at the end of phase one are not the ones with the prettiest plans, they’re the ones whose plan vs reality variance is honest and visible. Baselines are how Onplana keeps that variance honest.

The short answers:

  • Where they are: the Baseline view, under the project’s Plan tab, and View > Baseline on the Gantt toolbar.
  • How to capture one: Save Baseline on the Baseline view, or Capture baseline now under View > Baseline on a project that has none yet. A project owner or manager can capture.
  • How to see baseline dates on the Gantt: View > Baseline > Show baseline changes, then pick the baseline. See Overlay on the Gantt chart.
  • Which plans have them: every plan, Free included.
  • On paper: the Gantt’s PDF or PNG export can include any saved baseline; choose it under Baseline overlay in the export options.
  1. Open the project, open the Plan tab under the project header, and select Baseline.

  2. Select Save Baseline and give the snapshot a name. Naming it after the event helps later: “Approved plan”, “After scope change”, “Q3 replan”.

  3. The snapshot appears in the list with its capture date and who took it. Capture as many as you need; each is independent.

Capturing a baseline requires an Owner or Manager role on the project. This keeps the reference plan an explicit act by someone accountable for the schedule, not something that shifts casually.

The Baseline view comparing the live schedule against a saved Plan of record snapshot, with health, project end slip, and delayed task cards above the schedule variance table.

Select any snapshot in the list to open its variance report. Four cards sit across the top:

  • Health, a traffic-light reading of the whole project.
  • Project End Slip, the days between the finish the baseline recorded and the one the live plan projects, or On Time.
  • Delayed Tasks and On Time / Ahead, the counts behind the traffic light.

Under the cards, a Summary puts the comparison into a few plain sentences, so you can paste the story into a status update instead of reading it off the table:

  • The finish: where the project finish is now against the baseline, how many days it moved, the task that sets it, and the tasks on the chain driving it that changed against the baseline.
  • Scope: the number of tasks now against the baseline, and the total task duration in working days.
  • Cost: the planned cost now against the baseline’s. People who may not see the project’s budget get no cost sentence.
  • Added and removed: the tasks added since the baseline and the tasks removed, by name.
  • Largest start or finish moves: the five tasks that moved most, with their days, or a line saying no task starts or finishes on a different day.

The summary is built from the comparison itself, by fixed rules, with no AI call: it costs nothing, uses no AI budget, and reads the same each time you open it. The sentences are in English. A connected AI assistant asking how a project tracks against a baseline (the compare_baseline tool) gets the same summary.

Each row is one task, paired against its baseline. A BL column is what the snapshot recorded, the column beside it is where the task sits in the plan today, and the delta column after them is the difference in calendar days, positive meaning later. That shape repeats three times, for start, for finish and for duration, then once more for percent complete, and the last column shows any status change as before and after. Export CSV takes the lot.

One column is not a plan-against-plan comparison. Actual Δ, sitting beside the start delta, is the day work really began measured against the start the baseline planned. It stays blank until a task has actually started, so most rows are empty early in a project, and it is the earliest honest warning the table gives you: something that begins four days late usually finishes late, long before its finish date has moved to say so.

The duration pair is the one worth understanding, because it answers a question the dates cannot. It reads the duration stored on the task rather than subtracting one date from another, which separates “we started a week late” from “this was always going to take three weeks, not two”. Those two look identical when you compare only dates, and they call for opposite responses: the first is a scheduling problem, the second is an estimating one.

Rows are top-level tasks, not subtasks. A baseline is a record of the activities that were committed to, and rolling every subtask in would bury the ten lines a sponsor reads under a hundred they will not.

Below the table, Scope Changes lists the tasks added since the snapshot, and any task that existed then and does not now is greyed out in the table and marked “removed since baseline”. A Cost Performance block compares the baseline’s costs against today’s.

Worth knowing, so the rating reads as a rule rather than a mood:

  • On Track: nothing has slipped.
  • At Risk: something has slipped, but not more than a quarter of the comparable tasks. A single slipped task always lands here rather than in Behind, however small the project, which is deliberate: one slip is a fact worth seeing, not yet a trend.
  • Behind: more than a quarter of them have slipped.

Only tasks with a finish date in both the baseline and the live plan are comparable and count toward that quarter. Tasks added since, tasks removed since, and tasks with no finish date sit outside the ratio, so adding work to a project does not by itself make it read worse.

The variance table pairs each top-level task with the baseline. To see every change, task by task, use Compare versions: it compares the plan now, or any saved baseline, with an earlier baseline, the same way Onplana Schedule compares two files.

  1. On the Baseline view, select Compare versions. It shows once the project has a baseline.

  2. Under This version, keep Plan now or pick a baseline. Under Compared with, pick the baseline to compare against.

  3. Read the strip, then the list of changes below it.

Compare versions on the Baseline view, with This version set to Plan now and Compared with set to the Approved plan baseline. The strip says the plan finishes 2 working days later and 12 tasks changed, with Match by task ID and Export CSV. Below, a summary of the path to the finish, filters for All changes, Dates moved, Duration, Links and Progress, and the Changed list showing each moved date with its working days, such as Oct 12, 2026 to Oct 7, 2026 (-3d).
  • The strip says how the finish moved, in working days, and how many tasks changed, were added or were removed. Point at the counts for the breakdown: dates, durations, links, constraints and deadlines, resources, float, the critical path and progress.
  • The list groups the tasks as changed, added and removed. A changed field shows the baseline’s value and then this version’s, and a moved date carries its working days (+2d). The counts along the top filter the list.
  • Export CSV saves every change, whatever the filter shows, with the two values side by side, ready for Excel.
  • Tasks are matched by their place in the outline and their name, so a task inserted above others does not shift the rest. A task that was renamed or moved to another summary shows as one removed and one added. Match by task ID in the strip pairs tasks by ID instead.

The comparison is read only and changes nothing in the plan or the baselines. It has its own address, so you can copy the page link to send someone the same comparison. Close it with the close button at the end of the strip. Compare versions works on every plan, Free included.

  1. Open the project’s Gantt and open the View menu.

  2. Point at Baseline. Its options open beside the menu.

  3. Tick Show baseline changes and pick the baseline to compare against.

Each task that has moved since the baseline gets a chip beside its name with the number of days its start has moved: +3d starts three days later than the baseline planned, -2d two days earlier. A task still where the baseline put it carries no chip. A Baseline finish line on the timeline marks the date the baseline was due to finish, so you can see at a glance whether the plan now ends past it. The note under the chart explains the chips while the overlay is on. Manage baselines at the foot of the flyout opens the Baseline view.

The classic Gantt chart draws the baseline differently, as a gray ghost bar under each live bar.

The overlay is read-only: rescheduling live tasks never alters a captured baseline.

For a figure per task rather than a chip, turn on Start variance, Finish variance and Work variance in View > Columns on the Gantt. Start and finish variance count calendar days, the same count as the chip, and work variance counts the change in the task’s Hours estimate, so it reads 0 straight after a baseline is captured. A task with no Hours has an empty work variance cell. The columns compare with the baseline picked under View > Baseline, or the newest one when none is picked, and they fill in whether or not the overlay is on. See Optional columns.

On a project with no baseline, View > Baseline says No baseline yet. If you are the project’s owner or a manager on it, or an organization admin, it offers Capture baseline now, which saves today’s plan as “Baseline 1” and turns the overlay on straight away. Anyone else sees “A project owner or manager can capture one.” and a link to the Baseline view. To give the snapshot an event name such as “Approved plan”, capture it from the Baseline view instead, where you type the name.

The Gantt chart, and the overlay with it, is available on every plan. See Plan on the Gantt chart.

  1. Capture the first baseline at plan approval, not project start. “Approval” is the moment someone signed off; “start” is days or weeks later, after the first changes already happened. The baseline taken at approval is the one stakeholders agreed to; that’s the honest reference.
  2. Name baselines after events, not dates. “Approved plan”, “After scope change”, “Q3 replan” reads instantly six months later. “Baseline 1”, “Baseline 2”, “Baseline 3” requires archaeology. The name lives in the variance report alongside the snapshot date anyway.
  3. Capture a new baseline after every legitimate scope change. Scope creep happens; pretending it didn’t makes future variance reports useless. The right pattern: when a real change of scope is approved, capture a new baseline with the new agreed plan, and label it accordingly. Old baselines stay as historical reference.
  4. Limit to one baseline per planning event, max ~5 total. More than five baselines starts feeling like archaeology rather than reference; pick the canonical “Approved plan” plus the latest replan, and delete the rest. The Baseline view makes the deletion two clicks.
  5. Use the baseline overlay in every status meeting. Five seconds to toggle it on, and the conversation becomes “this task is three days behind the plan we approved” instead of “we are tracking… approximately… on time?” The team learns the discipline by seeing the overlay weekly.
  • I cannot capture a baseline. Capturing requires Owner or Manager role on the project. If you should be able to capture but can’t, check your role on the project’s Members tab, the project role is independent of organization role.
  • The baseline overlay isn’t showing on the Gantt. Two causes: (a) you don’t have a baseline yet (capture one first); (b) the overlay is off (tick Show baseline changes under View > Baseline). On the new Gantt a task that has not moved carries no chip, so a plan exactly on its baseline looks unchanged.
  • My baselines list shows ten entries; how do I prune? Pick the snapshots that no longer represent reality and use the delete action on the Baseline view. Old baselines kept for historical context are fine; old baselines kept “in case” are noise.
  • The variance report says “no changes” but I see the tasks moved. The variance shows date and progress changes; description, title, and assignee changes are not part of the variance because they don’t affect schedule risk. If you added or removed tasks, those count as variance, check whether the new task has a baseline counterpart (it won’t if added after capture).
  • A task shows no chip with the overlay on. That’s the good outcome, it means the task starts exactly where it was planned. The overlay is most informative when tasks have moved; the matched case is silent confirmation.
  • Baseline + Gantt + Dependencies. The schedule-management trio. Wire dependencies first, then capture the baseline; the baseline records the dependency graph along with dates, so the Gantt overlay reflects both. See Plan on the Gantt chart and Link task dependencies.
  • Baseline + Earned Value. The Finance view’s earned-value math uses planned costs from the baseline (Budget at Completion is read from the baseline). If costs change with a replan, capture a new baseline so the EVM numbers reflect current commitment. See Read the EVM dashboard.
  • Baseline + Imported MS Project plan. Import a .mpp or Project XML file into a new project and its baseline comes across as a baseline here, named after the file, so variance runs from day one. Adding a file to an existing project keeps each task’s baseline dates but creates no baseline, so capture one after that import. See Import from Microsoft Project.
  • Baseline + agents. Ask a connected agent how a project is tracking against a baseline and it answers from this same computation, down to the same started-late figure, so what it tells you cannot drift from what this view shows. See Connect an external agent.
  • Baseline + Reports. Cross-project Reports can display baseline variance per project, useful for portfolio-level drift detection. See Run cross-project reports.
Tool Baseline mapping
Microsoft Project Baseline ≈ Baseline (Project supports up to 11 baselines; Onplana practices ≤5). Importing a .mpp or Project XML file into a new project brings its baseline 0 across as a baseline
Microsoft Project Online Import the .mpp or Project XML files you exported, as for Microsoft Project; in a new project each file’s baseline comes across as a baseline; see Migrate from Project Online
Primavera P6 Baseline projects in P6 ≈ Onplana baselines conceptually, but a .xer import brings no baseline; capture one immediately after import
Asana No direct baseline equivalent; Asana relies on milestone-based comparison
Jira No native baseline; teams use sprint planning + version history as the comparison surface

Can I edit a baseline after capturing it? No, and that is the point. A baseline is immutable evidence of what was planned. If the plan legitimately changes, capture a new baseline and name it after the change.

How many baselines should I keep? One per planning event works well: initial approval, each major scope change, each replan. You can delete snapshots that no longer matter from the Baseline view. Most healthy projects end up with three to five baselines over their lifetime.

Do baselines need a paid plan? No. Capturing baselines, comparing them on the Baseline view, the overlay on the Gantt chart and a baseline in the Gantt export all work on every plan, including Free.

Does a baseline include task descriptions and attachments? A baseline records the schedule: tasks, dates, dependencies, planned costs, and progress at capture time. Descriptions and attachments are not part of the variance comparison because they don’t affect schedule risk.

Can multiple baselines be active at once on the Gantt overlay? You overlay one baseline at a time on the Gantt. The Baseline view lets you switch between snapshots; the Gantt overlay shows whichever one you picked. To compare two baselines with each other, use Compare versions and pick a baseline under both This version and Compared with.

What happens to baselines if I delete and restore a project? Project deletes go to the Recycle Bin, where the full structure is preserved, including all captured baselines. Restore brings them back intact with their original capture dates and authors.

Can I capture a baseline from a template-instantiated project? Yes, instantiating from a template creates a new project, and you capture its baseline the same way as any other. The template itself isn’t a baseline; the project you make from it is what gets baselined.