Batch generate marketing images from a Sheets queue
Every hour, turn a Google Sheets queue of pending prompts into finished Ideogram images filed in a shared Google Drive folder.
Every hour, run a batch marketing-asset generator that turns rows of a Google Sheets queue into finished Ideogram images filed in a Google Drive folder.
Trigger: cron, every hour.
Step 1. Read the queue tab of a configured Google Sheets spreadsheet using google-sheets Get Values on a range that covers all queue columns: prompt, aspect_ratio, style_type (style preset), rendering_speed, slug, status, drive_link, and seed.
Step 2. Iterate through the rows in order and pick the ones whose status column equals "pending". Skip any pending row whose prompt column is empty. Stop after processing 25 rows so a large backlog does not exhaust Ideogram API credits in one run.
For each selected row:
a) Call ideogram Generate (Ideogram 4.0) with the row's prompt as text_prompt, and pass the row's aspect_ratio, style_type, and rendering_speed straight through.
b) If the response has is_image_safe = false, do NOT upload anything to Drive. Write "safety_rejected" back to that row's status column via google-sheets Update Values and continue to the next row.
c) Otherwise, download the bytes from the returned data[0].url. Ideogram image URLs expire quickly per Ideogram's common_docs, so re-hosting is mandatory.
d) Upload those bytes to a fixed Google Drive folder using google-drive Upload File (Multipart). Set the file name to the row's slug column (with a .png extension) and set the parent to the configured Drive folder id.
e) Write three values back to that row via google-sheets Update Values: the Drive file's webViewLink into drive_link, the Ideogram data[0].seed into seed (so the marketer can regenerate a controlled variation later), and "done" into status.
Configurable inputs: the spreadsheet id, the queue tab name, the destination Drive folder id, the max-rows-per-run cap (default 25), and the cron schedule (default hourly). This is a fully deterministic code workflow: every row is a self-contained spec and no step-to-step reasoning is required.
Design note: this mirrors the shape of Ideogram's own Batch Generation product (https://about.ideogram.ai/batch) but delivers it via the API, so non-Pro Ideogram accounts get the same spreadsheet-driven experience.
Additional information
What does this prompt do?
- Reads a Google Sheets tab of pending image prompts every hour
- Generates each image with Ideogram using the row's own aspect ratio, style, and rendering speed
- Saves the finished file to a shared Google Drive folder, named with the row's slug
- Writes the Drive link, the image seed, and a done status back to the row so nothing gets regenerated twice
What do I need to use this?
- A Google account with the queue spreadsheet and a destination Drive folder ready to receive images
- An Ideogram account with API credit balance funded
- A queue tab with columns for prompt, aspect ratio, style preset, rendering speed, slug, status, Drive link, and seed
How can I customize it?
- Change how often the queue runs, from every hour to every fifteen minutes or once a day
- Raise or lower the twenty-five images per run cap to match your Ideogram credit budget
- Point the workflow at a different Drive folder when you start a new campaign
Frequently asked questions
Do the images stay accessible after Ideogram generates them?
What happens if Ideogram flags one of the prompts as unsafe?
How does it avoid burning through my Ideogram credits in a single run?
Can I regenerate a variation of an image I already made?
Do I need a paid Ideogram subscription to use this?
Related templates
Stop babysitting one-off image generations.
Drop your prompts in a spreadsheet, walk away, and come back to a Drive folder of ready-to-use marketing images.