Documentation
How to add a Gantt chart to a Confluence page, build and schedule a plan, recover from save problems, restore earlier versions, copy rows between charts, and export.
Last updated
Before you start
- You need Confluence Cloud. The app is built on Atlassian Forge, so it doesn’t run on Confluence Data Center or Server.
- A site admin installs the app once for the whole site.
- Anyone who can view a page can see its charts. To change a chart, you need permission to edit that page or blog post.
Install the app
A Confluence site admin installs Steadfast Gantt Planner from the Atlassian Marketplace. During installation, Atlassian asks the admin to approve what the app can access:
- App storage, to keep your charts, their versions and copied rows.
- Read pages and blog posts, so the app can check that you’re allowed to edit the page a chart is on before it saves a change.
- Read users, to show the names of assignees and version authors. Names are looked up when they’re shown and never stored.
- Read content details, to search for people when you pick an assignee.
- Personal data reporting, to tell Atlassian which account IDs the app stores, so data from closed accounts can be erased.
The app doesn’t change your pages: charts are kept in the app’s storage, not in the page body. It has no permission to write to Confluence content, and it makes no requests outside Atlassian.
Admins can confirm the app is working on its App status page, in Confluence’s admin settings. It runs a quick self-check (write a test value, read it back, delete it) and shows the license state and links to these pages.
Add a chart to a page
- Edit a page and type /gantt, or open the macro browser and choose Steadfast Gantt.
- Publish or keep editing the page. The macro shows New Gantt chart.
- Choose Start blank chart, or Start from sample plan to see a filled-in example you can edit.
- Set your working calendar (see Working calendar), then add tasks.
Each macro on a page is its own chart. A page can hold several.
A short tour walks you through the editor the first time you open it. You can replay it from the Help panel with Show tour again.
Build a plan
Choose Edit chart to open the editor. Viewers who can’t edit the page see the chart read-only, with zoom, Today, collapse and a legend.
- Add rows with Add task, Add milestone and Add parent on the toolbar.
- Edit in the grid: names, start and end dates, progress, status and assignee. Select a row and open its details for everything else, including duration in working days, lane, parent and predecessors.
- Drag bars on the timeline to move or resize them. Keyboard moves work too.
- Add a dependency by dragging the dot after a bar onto another bar. Dependencies are finish-to-start: when a task moves later, the tasks after it move later too. A dependency that would create a loop is refused, and the chart shows why.
- Group tasks under a parent row with Indent and Outdent. A parent’s dates span its children, and its progress is their duration-weighted average. The chevron collapses or expands it.
- Milestones have no duration and show as diamonds.
- Lanes group rows by team or stream, each with its own colour. Create one from a task’s details.
- Status is To do, In progress, Done or Blocked. Assignee is anyone on your Confluence site.
- Undo and Redo cover the last 100 steps.
- Zoom with Day, Week, Month or Quarter. Today brings the timeline back to today’s marker.
There are no low limits on tasks, lanes or length. Long timelines scroll sideways, and lane and parent labels stay pinned while you scroll. Only the visible rows and dates are drawn, so big charts stay quick.
When you’re finished, choose Done editing.
Working calendar
Open Calendar in the editor to set the chart’s working calendar:
- Working days: any combination of days.
- Period start day: weeks in the timeline begin on this day. Saturday is allowed and stays Saturday.
- Holidays: dates nobody works.
A 14-day preview shows working, non-working and holiday days. Durations and dependency shifts count working days only, and no task starts on a non-working day. Apply tells you how many tasks will move, and a version is saved first, so you can undo the whole change from History.
Autosave and save problems
Every change saves itself shortly after you stop typing, and the status next to the chart’s title shows when it was last saved.
If a save fails, nothing is lost:
- Your edits stay on your device, in your browser, until they’re saved.
- The banner names the cause: you’re offline, someone else saved the chart, you lost edit permission, the license is inactive, the change is too large, saving took too long, or app storage didn’t respond.
- Temporary problems are retried automatically, with a countdown. Retry now sends your edits at once.
- Download unsaved edits (JSON) saves a copy of your edits as a file you keep.
- If someone else saved the chart while you were editing, choose Overwrite with mine, or Load latest, keep mine as a version to take their version and keep yours in History.
- If you try to close the tab with unsaved edits, your browser warns you. If you reopen the chart later on the same device, it offers Restore draft.
Every error shows a Reference code. Include it if you write to support.
Version history
Open History to see earlier versions with their date, author and reason. A version is saved:
- at the start of each editing session (the first save after five idle minutes),
- before a calendar change, an import or a restore,
- when you keep your edits as a version after a conflict.
The last 20 versions of each chart are kept. Select a version to preview it next to the current plan, then choose Restore this version. Restoring creates a new version, so the plan you replaced stays in history.
Copy rows between charts
- Select rows with their checkboxes (Shift-click selects a range) and choose Copy rows.
- Open another chart, on the same page or another page on your site, and choose Paste rows.
- Choose where they go (At the top, At the bottom, or Under the selected parent) and whether to Keep original dates or have the first row start on a date you pick.
Dependencies between the copied rows are kept. Links to rows you didn’t copy are listed and left out. Copies are static: they get new IDs, and later changes in one chart don’t change the other. Copied rows are kept for 24 hours, for you only.
Import and export chart JSON
Open Import/Export:
- Export downloads the chart as a JSON file: a backup you hold, or a way to move a plan into another chart.
- Import reads a chart JSON file. Choose Replace this chart (a version is saved first) or Append to this chart (imported rows are added at the bottom with new IDs). If the file has problems, nothing is imported and the dialog lists each field to fix.
Exporting pages to PDF or Word
When you export a page that contains a chart, Confluence asks the app for a static version of it. The export includes the chart’s title, a table with every task (dates, progress and more), a list of milestones, and a note that the bars are interactive on the live page. If the chart can’t be loaded, the export still completes, with a short note and a reference code in place of the chart.
Licensing
If the app’s license on your site is inactive, charts stay viewable and exportable: you can still open them, export the page, and download chart JSON. Editing, importing and copying rows pause, with a notice, until a site admin renews the license in Manage apps.
What it doesn’t do
This version doesn’t sync with Jira issues, has finish-to-start dependencies only, and doesn’t do resource or portfolio planning. Two people can’t type into the same chart at the same moment: if they both save, the second person gets a conflict to resolve, and both versions are kept.
FAQ
How do I get started? Insert the macro with /gantt, choose Start blank chart or Start from sample plan, set your working calendar, then add tasks.
What happens if a save fails? Nothing is lost. Your edits stay on your device, the banner tells you why the save failed, and Retry sends them. Temporary failures retry by themselves.
Can adding lanes or bars break my chart? Each change is checked before it’s saved, conflicting edits are detected instead of overwritten, and a version is kept at the start of every editing session, so you can always restore an earlier plan.
What if a chart doesn’t load? The macro shows the chart, an empty state, or a specific error with Retry and a reference code, never an endless spinner.
Does it sync with Jira issues? Not in this version. Charts are planned in the macro itself.
Is there a Server or Data Center edition? No. The app runs on Confluence Cloud only.
Are copied rows linked to the original chart? No. Copy rows makes a static copy with new IDs.
What data does the app store? Chart content (titles, tasks, dates, progress, lanes, calendars and holidays) and the account IDs of chart editors, version authors, assignees and people who copied rows, all in your site’s app storage on Atlassian’s platform. The privacy policy has the details.
How is the app billed? Through the Atlassian Marketplace. If the license becomes inactive, charts stay viewable and exportable, and editing pauses until it’s renewed.
Troubleshooting
- The macro isn’t in the macro browser. Ask a site admin to check that the app is installed, and to open its App status page.
- There’s no Edit chart button. You need permission to edit the page. Ask the page’s owner or a space admin.
- “Someone else saved this chart while you were editing.” Choose Overwrite with mine, or Load latest, keep mine as a version and compare in History.
- “You’re offline.” Your edits are kept on this device and sent when you’re back online. Leave the tab open, or choose Download unsaved edits (JSON) to be safe.
- The chart shows an error with a reference code. Choose Retry. If it keeps happening, email support with the reference.
- A task moved when I changed the calendar. Tasks can’t start on non-working days, so a calendar change can move them. Open History and restore the version saved Before calendar change if you want the old dates back.
- Something else. See Support.