How to Create an S-Curve Chart in Google Sheets

Published on

An S-curve chart is a line chart in Google Sheets that is used for the graphical representation of cumulative data over time. It tracks progress or growth against a schedule and is widely used in project management.

In project scheduling, the allocation of percentage weightage for tasks will be lower at the beginning, peak in the middle, and lower again at the end. This pattern is typical for progress or growth. When such data is plotted using a line chart, it will resemble the letter “S”.

In the initial stage, progress will be slow due to various preparations such as material procurement, manpower arrangement & allocation, site clearance, etc. Progress accelerates gradually, reaching its peak in the middle, and then slows down as completion nears.

To create an S-curve chart, you must know how to format the data in Google Sheets.

Sample Data Preparation for Creating an S-Curve in Google Sheets

Unlike other charts, creating an S-curve in Google Sheets requires specific data structuring. Let’s understand this in detail in layman’s terms.

Distributing Percentage Weightage Across Items

Suppose I have a job involving the completion of substation work. This job may include various activities such as mobilization, supply of materials, cabling, panel erection, testing, and finally, commissioning activities.

To schedule this job and monitor it with an S-curve, a planning person typically assigns 100% weightage to the total job and then distributes this weightage among all the involved activities.

The distribution of weightage depends on several factors, such as manpower availability & requirements, the time needed for each task, priority, clearance, material availability, etc. Next, they assign a time frame for completing the job.

You can see the job descriptions in column A and the percentage allocations in column B.

Distributing Percentage Weightage Across Items

Distributing Percentage Weightage Over the Timeline

Now that we have the percentage weightage for each item, we should now plan the duration required to complete each task.

For shorter projects, such as one month, you can distribute the weight daily. For longer projects, it might be better to distribute it weekly or monthly.

In this example, my project duration is 8 months from Jan’24 to Aug’24, and I am distributing the percentage weightage monthly. This means determining how much percentage should be achieved each month.

Please see this distribution in columns C to J.

Distributing Percentage Weightage Over the Timeline

Now, we will proceed to the most important step in creating the S-curve in Google Sheets, which is formatting the data for the chart.

Cumulative Data for S-Curve

This is the final step of formatting data for creating the S-curve in Google Sheets.

We need a table that contains the months in one column and the running total of each month’s percentage weightage in another column.

You can enter the month names (Jan to Aug) manually in a column or use a formula to fetch them. I am using the following formula in cell L2 to transpose the month names from C1:J1:

=TRANSPOSE(C1:J1)

Next, we want the running total of each month’s scheduled percentage in C17:J17 in column M, next to the month names. For that, we can use the following formula in cell M2:

=TRANSPOSE(SCAN(0, C17:J17, LAMBDA(a, v, a+v)))
Sample Data for Creating an S-Curve in Google Sheets

When you use this formula, replace C17:J17 with the reference to each month’s column total. You can read more about this formula in my SCAN function guide.

In cells L1 and M1, enter the field labels “Month” and “Cumulative Percentage,” respectively.

We are all set to create the S-curve now.

Steps to Create an S-Curve Chart in Google Sheets

Since we have properly arranged data, creating an S-curve is easy in Google Sheets.

Here are the step-by-step instructions:

  1. Select the range L1:M9.
  2. Click Insert > Chart.
  3. Within the Chart Editor sidebar panel, under the Setup tab, select Smooth Line Chart under the Chart Type. This will create the S-curve based on the selected data.
  4. There are several customization options under the Customize tab within the Chart Editor, such as turning the legend on/off, title customization, etc.
S-Curve in Google Sheets

That’s all about creating an S-curve in Google Sheets.

Note: You can enter the actual monthly achieved cumulative percentage weightage of each task in N2:N9 and track your progress against the schedule as well.

Resources

Here are a few related resources regarding project management:

Prashanth KV
Prashanth KV
Your Trusted Google Sheets and Excel Guide Prashanth KV brings a wealth of experience in Google Sheets and Excel, cultivated through years of work with multinational corporations in Mumbai and Dubai. As a recognized Google Product Expert in Docs Editors, Prashanth shares his expertise through insightful blogging since 2012. Explore his blog for practical tips and guidance on maximizing your spreadsheet skills.

Lookup Previous Values Dynamically in Excel and Google Sheets

Sometimes, you may want to look up the previous values relative to the current...

Sort Data but Keep Blank Rows in Excel and Google Sheets

Using a dynamic array formula or the FILTER command, we can sort data and...

Lookup Values Under Categories in Excel and Google Sheets

We can use a combination of XLOOKUP and VLOOKUP in both Excel and Google...

Extract Items Under a Category from the Same Column in Excel

In Excel, you can use a combination of the XLOOKUP and DROP functions to...

More like this

XMATCH Row by Row: Finding Values Across a Range in Google Sheets

Using the BYROW function with XMATCH in Google Sheets allows us to match values...

Limit Formula Expansion to a Specific Row in Google Sheets

In this tutorial, I’ll explain how to limit the expansion of an array formula...

3-D Referencing Structured Data Tables in Google Sheets

When you have several tables within a single sheet—not across multiple sheets in a...

4 COMMENTS

  1. Hi Prashanth,

    Great article! Thank you very much for the detailed tutorial. Could I have a template of yours on Google Sheets?

    Thank you!

    • Hi there,

      Thank you for your kind words! I’m glad you found my tutorial helpful. I do have a template, and I’d be happy to share it with you. You can find it here: Sample Sheet.

      I hope you find it useful!

      Best,
      Prashanth

  2. Thanks a lot, I have enjoyed the tutorial. I request for a tutorial in Ms project in form of a PDF file. Thanks, It will be very grateful.

    Francis olem

    • Hi, Francis,

      Nowadays I am fully concentrated on Google Sheets and not even have a working copy of MS Project.

      It’s glad that you enjoyed this tutorial!

      Thanks for the drop by.

      Best,

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.