# Hourly hero-banner drafts for new Shopify products

> Every hour, spot newly published Shopify products and drop two Ideogram hero-banner variants into your marketing Slack channel for approval.

- Workflow type: agent
- Services: Ideogram, Shopify, Slack Bot
- Categories: Marketing, Operations
- Published: 2026-07-12

## What it does

- Checks Shopify every hour for products that were published or created in the last hour
- Generates two on-brand Ideogram hero banners per product: one wide landscape for the homepage and one square for social
- Renders the product name as legible typography inside each banner so the marketer can drop it in as-is
- Posts both variants into your marketing Slack channel, tagging the reviewer with a link back to the Shopify product and quick copy ideas
- Remembers which products it has already banner-drafted so nothing gets duplicated across hours

## What you'll need

- A Shopify store with a custom app connection so we can read your product catalog
- An Ideogram account with API credit for image generation
- A Slack workspace and the name of the channel where your marketing team reviews new creative
- The Slack handle of the marketer or channel group you want tagged for approval

## Prompt

Every hour on a cron schedule, draft a fresh pair of hero banners for each product that was just published to Shopify and drop them into the marketing Slack channel so the team can approve or tweak before promoting.

Trigger: cron, every hour. Shopify is not a first-class poll provider for us, but a cron plus a filtered list read is enough to catch recent activity.

Step 1 — pull new products. Call Shopify List Products with status=active and a dates filter that scopes the read to the last hour (created_at_min or published_at_min set to now minus one hour, whichever field you find more reliable for the store). Note that Shopify's product REST endpoints are marked deprecated since API 2024-04 but still function for custom apps per Shopify's own docs, so this is fine to use.

Step 2 — clean the list. Skip any product that has no title, or whose title is an obvious placeholder like "Untitled", "New product", "Test", or a lone SKU. Dedupe by Shopify product ID against the set of products this workflow has already drafted banners for in previous runs, so the same product never gets banner-drafted twice even if the hourly window overlaps it.

Step 3 — generate two banners per product with Ideogram Generate (Ideogram 4.0). For each surviving product, call the operation twice:

- Landscape homepage hero — aspect_ratio 16:9, prompt Ideogram to render an on-brand background scene and place the product name (and, if it fits, a short tagline derived from the product description) as legible in-image typography. Ideogram's edge over other image models is its typography, so lean on it.
- Square social variant — aspect_ratio 1:1, same brand direction, same product name as the visible headline, tighter composition suitable for Instagram, Meta Ads, and Pinterest.

Remember Ideogram sets aspect_ratio and resolution as mutually exclusive on generate — pick aspect_ratio here. Read the resulting image URLs from data[].url on each response. Those URLs expire after a short window, so use them immediately in the Slack post below.

Step 4 — post to Slack for approval. Send one message per product into the #marketing channel using Slack Send a Message. Use Block Kit so both images render inline: an intro section that @-mentions the assigned marketer (or a marketing user group) and links back to the Shopify product URL, then two image blocks (one per variant) each with a short caption naming the ratio and its intended surface, then a final section with two or three quick copy suggestions the marketer can paste into the caption or landing hero — headline options, a supporting subhead, and a CTA line. Keep the tone friendly and marketing-editor-oriented, not developer-y.

State to persist between runs: the set of Shopify product IDs already drafted, so the dedupe check in Step 2 keeps working across hours. Trim old IDs after 30 days.

Nuance to bake in:

- If Ideogram returns is_image_safe=false for a variant, skip that variant, note it in the Slack message, and continue with the other one instead of failing the whole product.
- If the product has no featured image or vendor set, still generate — Ideogram is building from the name and description, not the product photo.
- If zero eligible products come back in a run, do not post anything to Slack. Silent hours are fine — the channel should only get pinged when there is something to review.

## How to customize

- Change how often it runs (every 30 minutes, twice a day, or only on weekday mornings)
- Swap the two aspect ratios for the exact sizes your homepage hero slot and paid social templates use
- Rewrite the on-brand prompt to lock in your palette, typography direction, and photography style

## FAQ

### Do I need a designer on staff to make this useful?

No. The whole point is that the banners come out ready to review. A marketer or founder can approve, tweak the copy, and post; Ideogram's in-image typography means the product name is already rendered, not left as a placeholder.

### What happens if I publish ten products in one hour?

You get ten Slack posts, one per product, each with its own landscape and square variants. The workflow only skips a product if it has no title, an obvious placeholder title, or has already been drafted in a previous run.

### Can it post to more than one channel or ping more than one person?

Yes. Point it at the channel you want and list the handles you want tagged. Common setups tag one marketing lead plus a paid-social channel group.

### Will it re-draft the same product if I edit it later?

No. It dedupes on the Shopify product ID, so once a product has been banner-drafted, small edits will not trigger a second round. If you want a fresh set of banners after a big rework, ask the marketing team to re-run it on that product.

### Does this work on the free Slack plan?

Yes, as long as your channel history is long enough that reviewers can still see the banners when they get around to them. If your workspace archives older messages, ask marketers to approve the same day.

Use this prompt in General Input: https://www.generalinput.com/prompts/hourly-hero-banner-drafts-for-new-shopify-products