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.

Deterministic Code
IdeogramGoogle SheetsGoogle DriveMarketingOperationsContent GenerationData Sync
PromptCreate

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?
Ideogram image links expire after a short window, which is why this workflow immediately downloads each image and re-uploads it to your Google Drive folder. The Drive link written back into the sheet is the permanent one your team should share.
What happens if Ideogram flags one of the prompts as unsafe?
When Ideogram refuses to render a prompt, the workflow does not upload anything to Drive. It writes a safety_rejected status back to that row so you can rewrite the prompt and re-queue it.
How does it avoid burning through my Ideogram credits in a single run?
The workflow only processes twenty-five pending rows per run by default. If you drop hundreds of prompts into the sheet at once, they get worked through in batches across successive hourly runs instead of all in one hit.
Can I regenerate a variation of an image I already made?
Yes. The workflow writes the Ideogram seed back into the sheet alongside the Drive link. Copy the row, keep the same seed, and tweak the prompt or style to get a controlled variation.
Do I need a paid Ideogram subscription to use this?
You need an Ideogram account with a funded API credit balance, which is billed separately from any web subscription plan. A regular paid subscription on its own is not enough.

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.