Create a project schedule in Google Sheets by building a task table with owners, start and finish dates, durations, statuses, and dependencies, then adding a date-based grid to show the work as a simple Gantt-style chart. In a browser, you can make the schedule easier to use with dropdowns, conditional formatting, filters, and shared access.
Plan the schedule before entering tasks
Start by defining what the schedule needs to answer. A small personal project may need only task names and dates; a team plan often needs an owner, status, predecessor, and notes as well. Agree on the project’s start date, how progress will be reported, and whether durations mean calendar days or working days. These decisions prevent different people from interpreting the same dates differently.
Break the project into deliverables and manageable tasks. A task should describe work that someone can complete and report on, rather than a broad phase such as “marketing” or “launch.” For example, a website project might include “Approve page copy,” “Build product page,” and “Review on mobile.” If tasks are too large, delays are hard to locate; if they are tiny, maintaining the schedule becomes busywork.
Before you build the sheet, list milestones that have no duration, such as a launch date or approval deadline. Treat them as dated checkpoints, not as ordinary work that takes several days. Decide, too, who can change the schedule and who only needs to view it. That choice affects how you share the file later.
Set up a clear task table
In a new Google Sheets file, put column headings in row 1 and one task per row underneath. A useful starter layout is:
- A: Task ID — a stable short label, such as T01, useful when referring to work in discussions.
- B: Task — a concise action or deliverable.
- C: Owner — the person responsible for moving the task forward.
- D: Start and E: Finish — planned dates, entered as dates rather than text.
- F: Duration — the number of days planned for the task.
- G: Status — for example, Not started, In progress, Blocked, or Done.
- H: Predecessor — the task or tasks that need to happen first.
- I: Notes — assumptions, links, or a short explanation of a blocker.
Use one task per row and keep each column to one kind of information. Avoid merged cells in the task table: they interfere with sorting and filtering. Put the project name, schedule owner, and last-updated date above the table only if you can do so without obscuring its header; otherwise, create a small summary area on a separate tab.
Enter dates using a consistent locale and display format. Select the date columns and choose Format > Number > Date to display them as dates. A date that looks right but is stored as plain text will not behave reliably in date comparisons, sorting, or a Gantt grid.
Enter dates and calculate duration
Decide whether the schedule counts calendar days or working days. For a task running from November 3 through November 5, an inclusive calendar-day duration is three days. This convention counts both the start and finish dates, so document it for collaborators. If weekends should not count, calculate working days instead and account for holidays where needed.
With start dates in D2 and finish dates in E2, put this formula in F2 to count inclusive calendar days: =E2-D2+1. For a task starting November 3, 2026 and finishing November 5, 2026, the result is 3. Copy the formula down the column using the fill handle, or leave the duration column as a manually entered estimate if that better reflects how the team plans work. If a task is a milestone on one day, its inclusive duration is 1; use a separate task type or a clear label to distinguish milestones.
Check that finish dates do not precede start dates and that the planned dates make sense for the project. Google Sheets can identify mistakes with conditional formatting, but a visual check is still worthwhile. A blank date should remain blank rather than being treated as a real deadline, especially in a chart or formula-driven schedule.
Add dependencies and ownership
A predecessor records sequencing: for example, “Build product page” may depend on “Approve page copy.” A simple sheet can list predecessor IDs in one cell, while a more detailed plan can add a separate dependency table with one relationship per row. The first approach is quicker to read; the second is easier to analyze when tasks have several dependencies.
Do not assume a predecessor automatically moves a later task’s dates. A basic Google Sheets schedule is a planning document, not a project-management engine that recalculates an entire critical path when a date changes. When a task slips, review its downstream work, update affected dates deliberately, and tell the people whose commitments changed. For complex projects, record the reason for a date change in Notes or in a change log.
Give each task one accountable owner when possible. Other contributors can be listed in Notes or in an additional support column. One clearly responsible owner makes follow-up more straightforward than a row with a long list of names and no indication of who is coordinating the work.
Build a Gantt-style view with conditional formatting
A date grid makes overlaps and gaps easier to see. Keep the task table in columns A through I and place sequential dates across row 1 beginning in J1. Extend the dates far enough to cover the project, and format the header row as dates. You can enter the first date and drag the fill handle across subsequent cells; check that the sequence advances one day at a time.
To color the cells that fall inside each task’s planned range, select the grid area, such as J2:AZ100, then choose Format > Conditional formatting. In the side panel, set the rule to Custom formula is and use =AND(J$1>=$D2,J$1<=$E2). This assumes date headers are in J1:AZ1, task start dates are in D2:D100, and finish dates are in E2:E100; for the row 2 cell under a date between its start and finish, the rule returns TRUE and applies the chosen fill color. Use a different fill for milestones or create separate rules for task statuses if the visual remains easy to interpret.
Freeze the headings and key task details so they stay visible while scrolling. For example, choose View > Freeze > 1 row to keep the date and column headings visible, and freeze the columns that contain task names if the grid is wide. Turn on a filter with Data > Create a filter to view tasks by owner or status. Filters help with review, but avoid sorting only part of the task table: select the whole table so task details remain on the correct rows.
Make the sheet easier to maintain
Use data validation to standardize entries. Select the status cells, choose Data > Data validation, and create a dropdown with agreed choices such as Not started, In progress, Blocked, and Done. Dropdowns reduce inconsistent entries such as “Started,” “In progress,” and “Working,” which otherwise make filtering less useful. You can also validate date fields where appropriate, but do not make a field mandatory if legitimate tasks are not yet scheduled.
Keep the design restrained. Use one color for planned work, another for milestones, and perhaps a distinct status indicator; too many colors make the chart harder to read. Add a small legend if colors have special meanings. Give the date columns enough width to display full dates, use readable contrast, and avoid relying on color alone to communicate a blocker or status.
Set a routine for updating the plan, such as a weekly review or a short check after a major milestone. During the review, confirm completed work, revise forecasts rather than silently overwriting history, and identify the next decision or dependency. A separate “Actual finish” column or a dated change log can preserve useful history while the planned finish column shows the current forecast.
For a modest task list, conditional formatting is often clearer than a chart. If you want a separate visual, select an appropriate data range and choose Insert > Chart, then use the Chart editor to choose a chart type. A conventional stacked-bar Gantt setup needs carefully prepared series, such as a hidden start offset and a task duration; it takes more setup than a date grid and may be less convenient to update. Google Sheets menus and chart-editor labels can change, so use the current Chart editor options rather than assuming every account shows an identical panel.
Share, protect, and keep a reliable record
Use the Share button to invite collaborators or create a link with an appropriate access level. Give edit access only to people expected to update the schedule; viewers can inspect dates without changing them. Link-access settings can expose information beyond the intended team, so check the audience and your organization’s sharing rules before enabling broad access.
Protect important formulas or headings using Data > Protect sheets and ranges. Protection can reduce accidental edits, but it is not a substitute for access control or a backup. Google Sheets saves changes as you work and provides version history through File > Version history > See version history, which can help you inspect or restore an earlier version. Name important versions before a major replanning session so they are easier to find later.
Google Sheets is available through a Google account, while storage, administration, and collaboration options can depend on the account or Google Workspace plan. Check the current plan details if your organization has specific requirements. For sensitive project information, follow your organization’s data-handling and retention policies rather than assuming that link sharing or a protected range makes the file confidential.
When Sheets is enough—and when to use another tool
Sheets is a good fit when the plan is relatively small, people need a familiar editable table, and the team can agree on a simple update routine. It is flexible for custom columns, notes, estimates, and quick reporting. It is also easy to adapt when a project’s process does not match a fixed template.
A spreadsheet becomes harder to manage when many tasks depend on one another, dates shift frequently, several projects compete for the same staff, or the team needs automated reminders and workload views. Dedicated project-management software may offer dependency-aware timelines, notifications, task discussions, and portfolio reporting. Those features can reduce manual coordination, but they also require choosing a system, setting it up, and keeping its data current.
Excel can open spreadsheet files and offers its own charting and collaboration workflow, but menu paths and some features differ from Google Sheets. If the team works primarily in Google Sheets, build and maintain the schedule there rather than assuming that every chart, formula, or formatting rule will transfer identically between spreadsheet applications. Choose a tool based on the project’s coordination needs, not simply on which one can draw a timeline.
Frequently Asked Questions
Does Google Sheets have a project schedule template?
Google Sheets may show templates in its template gallery, and available templates can vary. You can also create a schedule from a blank spreadsheet using a task table and a date grid. A simple custom layout is often easier to adapt to the team’s fields and date conventions.
How do I make a Gantt chart in Google Sheets?
Create task start and finish dates, add dates across a header row, and apply a custom conditional-formatting rule to color cells between each task’s start and finish. This produces a Gantt-style grid. A stacked bar chart is another option, but it requires preparing chart data and is usually more work to maintain.
Can Google Sheets automatically move dependent tasks?
A normal spreadsheet does not automatically reschedule all dependent work like a dedicated project-planning system. Record predecessors, review downstream tasks when a date changes, and revise the schedule deliberately. More advanced formulas or scripts can automate parts of a workflow, but they need careful setup and maintenance.
Should project duration include weekends?
It depends on the project and the meaning of the estimate. Use calendar days for elapsed time when weekends count, and working days when the plan is based on a standard workweek. State the convention in the sheet and account for holidays if they affect the team’s actual availability.
How can I stop collaborators from changing formulas?
Use Data > Protect sheets and ranges to restrict editing of formula cells or important areas, and share the file with viewer access for people who only need to read it. Protection helps prevent accidental edits, but check the access settings and organizational policy for information that should remain private.
Related
- How to Copy Excel Cells to Word Without Losing Format
- Copy a Word Document into Excel: Best Methods and Tips
- Copying Text from Excel to Word: Formatting, Links and Tables
Try it: the Date Difference Calculator: days, months, years and weekdays between two dates, with the DATEDIF formulas.
More in How-to basics
- AG Grid Insert Row: APIs, Examples, and Row Model TipsTo insert a row in AG Grid’s Client-Side Row Model, call gridApi.applyTransaction({ add: [newRow], addIndex: 0 }); omit…
- Freeze Panes in Excel: Keep Rows and Columns VisibleIn Excel for Microsoft 365 on Windows, select the cell immediately below the rows and immediately to the…
- Edit a Dropdown List in Excel: Sources, Steps, and FixesTo edit a dropdown list in Excel for Microsoft 365 on Windows, select a cell that uses it,…
- How to Add a Header in Word: Step-by-Step InstructionsTo add a header in Microsoft Word, open the document, choose Insert > Header, select a layout, and…
- How to Add a Header in Microsoft Word: Step-by-StepTo add a header in Microsoft Word, open the document, select Insert > Header, and choose a built-in…
- How to Add a Header in Word on Certain Pages: GuideTo add a header to only certain pages in Word, separate those pages into sections, then turn off…
Sources: Function behaviour and menu paths: Microsoft Support documentation for Excel. Method & sources
Spotted an error in this guide? Let us know.