Yes, you can use Google Sheets and QUE together with Templater, but not by pointing Templater at both. Templater reads one data source. To use both, you make QUE that data source, and you let the Google Sheet feed QUE through the QUE API or through QUE’s built-in Zapier integration. The sheet stays where your team edits data. QUE becomes the place Templater actually reads from.
That one rule shapes everything else on this page. It decides when the combination makes sense, how the data travels, and when you should skip QUE and let Templater read the sheet directly. We will go through each in turn, with a labeled hypothetical so the moving parts are easy to picture.
Why it is one data source, and what that means for a sheet
Our help pages are direct on this point. Templater can only pull data from a single data source, whether that is a Google Sheet, a JSON file, a tab-delimited file, or QUE. It can also map data to only one worksheet, so a workbook with several tabs still gives Templater a single tab to work from.
So the phrase “use Google Sheets and QUE simultaneously” really means something else. It means your data starts life in a sheet, and QUE sits between the sheet and Templater. The sheet is the place people type. QUE is the place jobs live while they wait to be rendered. Templater, running on a rendering machine, reads the jobs from QUE and never touches the sheet at all.
Before looking at that arrangement, it helps to know what you give up and keep by using Google Sheets without QUE, because for some teams that is the better answer. Templater supports a native Google Sheets document as a data source. You sign in, authorize access to your Google Drive, and pick the document. Templater’s Bot, the part that renders without someone sitting at the keyboard, reads the sheet at regular intervals. The default is every half minute, and the shortest allowed interval is 0.3 minutes, about 18 seconds. Templater reads and writes through the Google Sheets API, so it has to live within that API’s rate limits. That is why the floor exists, and why setting the number too low can make After Effects behave in ways you will not enjoy.
A direct sheet also brings a few rules you should know about before you build one. Column headers must not begin with a numeral, or contain spaces or the _ character, and the dollar symbol is a problem too. If a header breaks the rule, the data will not map to your layers. The start row must be greater than 1 for Google Sheets, because row 1 holds the headers. For the Bot to work, the data source needs a column labeled render-status, and the Bot picks up rows where it says ready. If you run more than one Bot on the same data source, our docs say to give each Bot a name, and the sheet then carries a bot column as well.
One more detail from our docs matters here. A direct sheet can serve several machines. Because the document lives in the cloud, more than one machine can read new rows from it, even from different places. For a heavy versioning load, that is a perfectly respectable setup, and it needs nothing beyond Templater and the sheet. If that describes you, you may not need QUE for this job at all.
What QUE adds, and how a sheet reaches it
QUE is a datastore with an API. Our API reference describes it as the answer for people who have reached the limits of spreadsheets as a data source, and for developers who need a secure way to feed customized video into their own applications. It has four parts. Satellites are the machines that process job data into video, and Templater must be installed on them. Autografs are JSON representations of After Effects projects built with Templater. Campaigns are collections of jobs, and they carry default properties for the jobs inserted into them. Jobs are the sets of properties for each rendered output.
The documentation gives a handy way to hold all of that in your head. If you are coming from spreadsheets, think of a job as a row. A job’s property keys are the column headers. A job’s property values are the cells. A campaign is the whole sheet, in a sense, and an autograf is the After Effects project that the columns are mapped to.
QUE’s four parts
What each part of QUE does
| Part | What it does | Spreadsheet equivalent |
|---|---|---|
| Satellites | Machines that process job data into video; Templater must be installed on them | The rendering machine |
| Autografs | JSON representations of After Effects projects built with Templater | The After Effects project the columns are mapped to |
| Campaigns | Collections of jobs; carry default properties for jobs inserted into them | The whole sheet, in a sense |
| Jobs | Sets of properties for each rendered output | A row; property keys are column headers, values are cells |
Once you see jobs as rows, the Google Sheets question becomes concrete. Each new row in your sheet needs to become a job in a QUE campaign. Our own FAQ names two routes for that.
- The QUE API. You send a POST request to the jobs endpoint to create one job, or to the batch endpoint to import several jobs at once. You authenticate with your API key as a Bearer token in the request header. Someone has to write and run the code that reads the sheet and makes those calls.
- The Zapier integration. Dataclay built a first-party QUE app on Zapier. In Zapier you connect it with your QUE API key, a nickname for the connection, and the QUE API URL. From there, the QUE integration lists triggers such as New Job and Updated Job, and actions such as Insert Job and Update Job. A Zap that ends in Insert Job is how a spreadsheet row, or any other event Zapier can watch, turns into a QUE job without code.
We want to be careful about the second route. Zapier connects QUE to more than 5,000 other web services, according to our help page, and it has a free tier for experimentation and paid tiers beyond it. Which Google Sheets trigger Zapier offers, and how it behaves, is Zapier’s side of the connection. Check that in Zapier before you plan around it. What we can say is that QUE’s side is built to receive a job from a Zap, and that the integration also works from the Integrations page inside the QUE Dash if you would rather start there.
If you are weighing the two routes against each other, we wrote a separate comparison of triggering a video when a row is added to a spreadsheet and a walk through the API keys, endpoints and first job. This page stays on the bigger question of whether the pairing is right for you.
A hypothetical: one sheet, one campaign, one rendering machine
The example below is invented to show the flow. It is not a customer story and the names are made up.
Picture a producer who makes a congratulations video for each person on a list of honorees. Her team keeps the list in a Google Sheet because the people who gather the names do not use After Effects, and they should not need to. Each row holds a name, a title line, and a file name for the output. She has a Templater project with text layers mapped to those fields, and it is registered with QUE as an autograf.
She has also created a campaign in QUE. When she created it, she chose the autograf and a satellite as the campaign’s defaults. That choice matters, because our API reference says that when a job arrives without an aep or a bot value, QUE fills in the campaign’s default autograf and satellite. It also sets the job’s render-status to ready unless the request says otherwise. So the sheet does not need a column for the project path or the machine. Fewer columns means fewer ways for a stray cell to break a batch.
A Zap watches the sheet. When a new row appears, the Zap’s action inserts a job into the campaign, with the row’s name, title and output file name as the job’s properties. QUE stores the job. On the rendering machine, Templater’s Bot is switched on and linked to the campaign. It picks up jobs whose render-status is ready, renders them, and moves each job through the states our docs describe, from ready to queued to processing to done. If a job fails, it ends in an error state, and the error code points at the cause, for instance a media problem or an After Effects problem.
Notice what the producer gained. She can see every job and its state in the QUE Dash without opening the sheet. She can route different campaigns to different satellites. She can hand the sheet to the people who collect names and never give them access to the rendering machine. Notice also what she did not gain. The sheet does not know a video was finished unless she builds something to write that back. QUE holds the render-status, and the sheet is only the starting point. If she wants a column in the sheet that says done, that is a second automation to design, and the Updated Job trigger in the Zapier integration is where she would begin looking.
When she wants to preview a row before committing to a batch, Templater can link to the campaign. After signing in and linking the campaign, she can step through the jobs with the preview controls and see how each one looks in the composition. She can also filter which jobs get processed, by ID, by render status, by a property value such as a layer name, or by creation date. A campaign with several hundred jobs, some already done, can be filtered down to only the outstanding ones. A sheet read directly does not give her that kind of control without extra columns and discipline.
When the pairing is worth it, and when to skip it
Here is our honest view. Using a sheet plus QUE adds a moving part, and a moving part has to earn its place. There are four situations where it does.
- The people entering data should not be the people running renders. A sheet is easy for them, and QUE keeps the rendering side separate.
- You need to route work. Campaigns and satellites let you decide which machine handles which batch.
- You want a record of job states that does not depend on a column someone might overwrite.
- The sheet is only one of several sources. A Zap or an API call can put jobs into the same campaign from a form, an app, or a script, and Templater still reads one source.
There are also situations where QUE is the wrong tool. If one person owns the sheet, the project, and the machine, a direct sheet is simpler. You avoid a license for QUE, you avoid the extra step of getting rows across, and you avoid a second place for things to go wrong. A direct sheet also suits a trial of the whole idea, since Templater’s free trial contains all features, with a watermark on dynamic layers. If you are still working out whether data-driven video suits your team, start there and add QUE when the pain of the direct approach becomes real.
The trial for QUE has a limit that is worth knowing. By default, the QUE free trial is limited to 50 jobs. Our FAQ says Dataclay plans to add a way to request more for developer testing, but that is a plan, not a feature you can count on today. If your test needs more than 50 jobs, plan around that limit or talk to us first.
There is one more limit, and it is a design one. Because Templater reads a single source, you cannot keep half your data in a sheet and the other half in QUE and have Templater merge them. If two sources have to combine, combine them upstream, in the sheet or in the Zap, before the job reaches QUE. The rest of the pipeline, including how jobs map onto layers, is described in our overview of data sources in Templater and in the page on how QUE and Templater work together.
Finally, a word on keys. Whichever route you pick, you will use your QUE API key. Generating a new key invalidates the old one, so every integration using the old key has to be updated. Treat it like a password. Do not paste it into a sheet, and do not share it. If you suspect it has been exposed, generate a new one and update each place that used the old key.
The short version is this. Use the sheet as the front door and QUE as the room where jobs wait. Make QUE the data source in Templater, bring rows across with a Zap or an API call, and keep the sheet’s columns simple so the job keys stay simple too. If you are a one-person shop with one machine, read the sheet directly and save yourself the extra layer. Add QUE when you need separation, routing, or a job record you can trust, and not before.
Questions come up fast once a sheet and a datastore are in the same pipeline. Here are the ones to settle before you build.
Frequently Asked Questions
Can I use Google Sheets and QUE simultaneously with Templater?
Yes, with one condition. You set QUE as the data source in Templater, because Templater reads only one source. Then you connect the Google Sheet to QUE, either directly through the QUE API or through QUE’s built-in Zapier integration. The sheet supplies the data, QUE holds the jobs, and Templater processes whatever is in QUE. Templater does not read the sheet itself in that setup.
Can Templater read two data sources at the same time?
No. Our help pages say Templater can pull data from only a single data source, and that it maps data to a single worksheet within a Google Sheet. If your data lives in two places, combine it before it reaches Templater, for example by having a Zap or an API call put both sets of fields into one job in QUE.
Do I need QUE if I only want Templater to read a Google Sheet?
No. Templater supports a native Google Sheets document as a data source, and the Bot reads it at regular intervals, no shorter than about 18 seconds. Sign in, authorize access to your Drive, and pick the document. Use QUE when you want separate campaigns, satellites and a job record, not just because your data is in a sheet.
Does the Zapier integration have a Google Sheets trigger?
Zapier decides which triggers its own Google Sheets app offers, so check there. What our help page confirms is the QUE side: the QUE app on Zapier offers triggers such as New Job and Updated Job and actions such as Insert Job and Update Job. An Insert Job action is the piece that creates a QUE job from whatever your Zap watches.
What do I need to connect QUE to Zapier?
Your QUE API key, which you find on the Account page of the QUE Dash. The first time you set up a QUE trigger or action in Zapier, you are asked for the key, a nickname for the connection, and the API URL. The default URL is pre-filled, and you only change it if you use a dedicated or custom deployment of QUE.
Will the sheet show when a video is finished?
Not by itself. QUE keeps each job’s render-status, which moves from ready to queued to processing to done, or to an error. If you want that status in a sheet column, you have to build a second step, such as a Zap that reacts to an updated job. The Updated Job trigger in the QUE integration is a place to start.
Is there a limit on the QUE free trial?
By default the QUE free trial is limited to 50 jobs, according to our FAQ. Dataclay is planning to let developers request more for testing, but that is not a promise of a date. If you need more than 50 jobs to test your pipeline, contact us before you build around the limit.
