Skip to content

How to automatically generate Google Slides from Google Sheets

Do you spend a lot of time creating presentations? Presentation slides are a standard tool for communicating in Sales, Customer Success, Consulting, Marketing Agencies, and whenever your boss asks for a report. 🙂
You may find yourself filling out the same slides over and over for different customers or for monthly or weekly reports. This is where automation can help! If you are a programmer, you could set up a Google Apps script to copy the data over, but for the rest of us, there is Slideform.
In this tutorial, I will show you how to automate your Google Slides using data in Google Sheets. You can quickly and easily generate multiple, customized slide decks based on data in Excel or Sheets.

4 simple steps to automating your Google Slides 

  1. Create a custom Google Slides template

  2. Create a Google Sheet with data for the presentation

  3. Upload your template and data sheet to Slideform

  4. Fill in the form and generate the presentation

Get in touch with us to learn more

Check out the video summary here --> 

1. Create a custom Google Slides template

The first step is to create a template for your presentations. I created a simple presentation for a pricing proposal. It has just two slides: a title slide and a body slide with the pricing information.
Google Slide template 
Notice the curly braces around the words client, seats, monthly rate, etc. The curly braces {{ and }} tell us that those elements are placeholders, called “pragmas”, and they will be replaced in the final version of the presentation. I used a text box on the slide to enter the placeholder text along with all the other pre-formatted text.
When you design your custom template, notice which fields you need to replace in different versions of the presentation. In my example, since it is a pricing sheet that will be sent out to many different prospective clients, I want to replace the client name each time. I also want to provide customized pricing for each client.
I used six pragmas in my custom template. These will all be filled in with the correct information in the final presentation.
  • {{client}}  - this will hold the client name
  • {{seats}}  - how many user licenses they are buying
  • {{monthly rate}}  - the total license cost per month
  • {{annual cost}}  - the total license cost per year
  • {{image:clientlogo}}  - the client logo
  • {{fn:date}}  - the date the slides are created
Slideform can also fill in images and charts (from Google Sheets and other sources) automatically. I saved all my client logos in Slideform, so I can select the logo from a dropdown menu and it will be sized and cropped into the presentation automatically!

Save the template as a Google Slides presentation in your Google Drive workspace.  


2. Create a Google Sheet with data needed to fill in the presentation

Slideform integrates with data from your Google workspace and other sources. You may already have a Google Sheet with data that you need to enter into your presentation. In this example I am creating several pricing proposals and I have the pricing info for each prospective client in a Google Sheet. 

data spreadsheet 

Notice that some of the columns in my sheet correspond to the pragmas in my template. These columns will be used to fill the pragmas in the final presentations. Other columns in the sheet are for internal calculations and will not appear in the presentation.  


3. Upload your template and data sheet to Slideform 

Now you upload the slide template and the data sheet to Slideform. Just enter the Google Sheet URL under the Add Data Source menu. Then enter your slide template URL in the New Form menu.

The last configuration step is to connect the data to each placeholder pragma in the template. You can either type in the data for a pragma or you can have it auto-filled from the Google sheet. Either way, your slides will be filled in and formatted beautifully each time you generate the presentation.

For example for the {{client}} pragma, I set the form up so that I can choose from a dropdown list based on the client names that are in column A of the spreadsheet.

Once I have the client name, I can auto-fill the remaining text or numeric pragmas based on which client I have chosen. For example, the {{seats}}  pragma will be looked up in the sheet based on the client name like this:

select seats where client == {{client}} 

Save the data configuration once all pragmas are set.


4. Fill in the form to generate the presentation

Now that my template and form are all set up, I can generate the presentation whenever I need to by clicking Generate.

screenshot of Slideform 

Just select the client name and the presentation is done.

finished presentation
All the formatting, fonts, text, and sizing is taken care of and I just get a clean, professional, and accurate presentation very quickly. And I can download it as a pdf, PowerPoint, or save it to my Google Drive.

Now for the fun part! Automate!

Let’s generate a presentation for each of the clients in my Google Sheet. All I have to do is go to my form and click Generate. I choose the client’s name and click next and the slides are ready. No more copying and pasting!

If I have more proposals that I want to send out in the coming weeks, I can just add those clients to my sheet, go into Slideform, and generate the proposal slides with one click.

I hope you’ve enjoyed this intro to Google Sheets to Google Slides automation. Get in touch with Slideform at 

Get in touch with us to learn more