<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Dustin Li</title>
    <description>The latest articles on DEV Community by Dustin Li (@relayme).</description>
    <link>https://dev.to/relayme</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4214109%2F9f2a23be-351b-4a1f-ac1c-c8f2bc4c225e.png</url>
      <title>DEV Community: Dustin Li</title>
      <link>https://dev.to/relayme</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/relayme"/>
    <language>en</language>
    <item>
      <title>A practical checklist: turn one SKU into a full ad set (image + short video)</title>
      <dc:creator>Dustin Li</dc:creator>
      <pubDate>Mon, 02 Nov 2026 11:13:06 +0000</pubDate>
      <link>https://dev.to/relayme/a-practical-checklist-turn-one-sku-into-a-full-ad-set-image-short-video-io7</link>
      <guid>https://dev.to/relayme/a-practical-checklist-turn-one-sku-into-a-full-ad-set-image-short-video-io7</guid>
      <description>&lt;p&gt;Marketing teams rarely lack ideas. They lack a repeatable path from &lt;strong&gt;one product photo&lt;/strong&gt; to a usable &lt;strong&gt;ad set&lt;/strong&gt; — static variants plus a short motion clip — without a week of back-and-forth between design, copy, and video.&lt;/p&gt;

&lt;p&gt;This is a workflow checklist you can run in under an hour once the assets exist. Use any tools you already have; the steps matter more than the brand names.&lt;/p&gt;

&lt;h2&gt;
  
  
  What “done” looks like
&lt;/h2&gt;

&lt;p&gt;For one SKU you want:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;4–6 static ad variants&lt;/strong&gt; (square + story/vertical)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1 short video&lt;/strong&gt; (9–15 seconds) that shows the product clearly&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Consistent brand cues&lt;/strong&gt; (logo placement, colors, type scale)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Export naming&lt;/strong&gt; that a media buyer can upload without guessing&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If any of those is missing, the campaign stalls in “almost ready.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Before you open any generator
&lt;/h2&gt;

&lt;p&gt;Collect this pack (10 minutes):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hero product photo on a clean background (or lifestyle shot with clear subject)&lt;/li&gt;
&lt;li&gt;Brand logo (PNG with transparency)&lt;/li&gt;
&lt;li&gt;Primary + secondary brand colors (hex)&lt;/li&gt;
&lt;li&gt;One offer line (≤ 8 words) and one CTA (Shop now / Learn more / Get started)&lt;/li&gt;
&lt;li&gt;Audience note: cold prospect vs retargeting (tone changes)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Skip this and AI outputs look generic even when the model is strong.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1 — Lock the creative brief (5 minutes)
&lt;/h2&gt;

&lt;p&gt;Write four lines only:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Job:&lt;/strong&gt; “Create ads that make [audience] want [outcome]”&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Must show:&lt;/strong&gt; product clearly in first 2 seconds / first glance&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Must avoid:&lt;/strong&gt; tiny text, cluttered backgrounds, competing logos&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Success:&lt;/strong&gt; buyer can recognize the SKU in a feed scroll test&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pin this next to the canvas. Generators amplify vague briefs into vague ads.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2 — Produce static variants (15–25 minutes)
&lt;/h2&gt;

&lt;p&gt;Aim for coverage, not perfection:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Ratio&lt;/th&gt;
&lt;th&gt;Use&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Feed&lt;/td&gt;
&lt;td&gt;1:1&lt;/td&gt;
&lt;td&gt;Meta / LinkedIn feed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Story / Reel cover&lt;/td&gt;
&lt;td&gt;9:16&lt;/td&gt;
&lt;td&gt;Stories, TikTok, Reels&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Landscape&lt;/td&gt;
&lt;td&gt;1.91:1&lt;/td&gt;
&lt;td&gt;Display / YouTube companion (optional)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Variant ideas that usually work:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Clean product on brand color&lt;/li&gt;
&lt;li&gt;Product + short benefit headline&lt;/li&gt;
&lt;li&gt;Before/after or “problem → product”&lt;/li&gt;
&lt;li&gt;Social-proof strip (stars / “used by marketing teams”) if you have real proof&lt;/li&gt;
&lt;li&gt;Offer-forward (discount / free trial) for retargeting only&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Rule: &lt;strong&gt;one idea per frame.&lt;/strong&gt; If you need two messages, make two ads.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3 — Make one short video from the same SKU (15–20 minutes)
&lt;/h2&gt;

&lt;p&gt;Keep it simple:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Start on the product (no long logo sting)&lt;/li&gt;
&lt;li&gt;One motion beat (zoom, pan, or cut to detail)&lt;/li&gt;
&lt;li&gt;End card with CTA for the last 2–3 seconds&lt;/li&gt;
&lt;li&gt;Captions optional; many feeds play muted — text on screen helps&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Length: &lt;strong&gt;9–15 seconds&lt;/strong&gt; for testing. Longer only after a winner emerges.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4 — Brand pass (5 minutes)
&lt;/h2&gt;

&lt;p&gt;Checklist before export:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[ ] Logo readable but not dominating&lt;/li&gt;
&lt;li&gt;[ ] Colors match brand kit (not model defaults)&lt;/li&gt;
&lt;li&gt;[ ] CTA contrast is high&lt;/li&gt;
&lt;li&gt;[ ] No watermark from tools you don’t want public&lt;/li&gt;
&lt;li&gt;[ ] Safe margins for UI chrome on Stories&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 5 — Export and name like a media buyer (5 minutes)
&lt;/h2&gt;

&lt;p&gt;Suggested naming:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;SKU_channel_ratio_variant_v1&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;mug_meta_1x1_benefit_v1.png&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;mug_meta_9x16_offer_v1.mp4&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Upload winners first; archive the rest. Do not dump twelve near-duplicates into Ads Manager on day one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where teams lose a day
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Waiting for a designer to “make it on-brand” after a free generator dump&lt;/li&gt;
&lt;li&gt;Regenerating forever instead of shipping a B-grade test set&lt;/li&gt;
&lt;li&gt;Mixing cold and retargeting copy in the same creative&lt;/li&gt;
&lt;li&gt;No shared folder — Slack becomes the DAM&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Fix the process before buying more tools.&lt;/p&gt;

&lt;h2&gt;
  
  
  Optional: one workspace for image + video
&lt;/h2&gt;

&lt;p&gt;If your stack is fragmented (one tool for stills, another for clips, a third for resize), a single &lt;strong&gt;AI image + video workflow&lt;/strong&gt; for marketing teams can cut the handoff tax. &lt;a href="https://relayme.ai" rel="noopener noreferrer"&gt;RelayMe&lt;/a&gt; is one option in that category: start from a product photo, produce ad-ready image and short video variants, then export for paid social. Use it only if it replaces steps you already hate — not because a directory listed it.&lt;/p&gt;

&lt;h2&gt;
  
  
  30-minute test plan after you ship
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Launch 3 static + 1 video to a small budget&lt;/li&gt;
&lt;li&gt;Kill anything under your CTR / thumb-stop baseline after 24–48 hours&lt;/li&gt;
&lt;li&gt;Iterate &lt;strong&gt;only&lt;/strong&gt; the winner’s hook (headline or first 2 seconds)&lt;/li&gt;
&lt;li&gt;Repeat for the next SKU with the same checklist&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Consistency beats novelty for early paid social.&lt;/p&gt;

&lt;h2&gt;
  
  
  Copy-paste checklist
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[ ] Brief (job / must-show / avoid / success)
[ ] Asset pack (photo, logo, colors, offer, CTA)
[ ] 4–6 statics across 1:1 and 9:16
[ ] 1× 9–15s video, product first
[ ] Brand pass
[ ] Named exports
[ ] Small-budget test live
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That is the whole loop. Tools change; the checklist travels with you.&lt;/p&gt;

</description>
      <category>marketing</category>
      <category>ai</category>
      <category>advertising</category>
      <category>saas</category>
    </item>
    <item>
      <title>How marketing teams can turn one product photo into ads with RelayMe</title>
      <dc:creator>Dustin Li</dc:creator>
      <pubDate>Thu, 29 Oct 2026 03:48:09 +0000</pubDate>
      <link>https://dev.to/relayme/how-marketing-teams-can-turn-one-product-photo-into-ads-with-relayme-27hl</link>
      <guid>https://dev.to/relayme/how-marketing-teams-can-turn-one-product-photo-into-ads-with-relayme-27hl</guid>
      <description>&lt;p&gt;&lt;strong&gt;Disclosure:&lt;/strong&gt; I work on RelayMe, a self-funded product based in Hong Kong. This article describes how the product works today. Pricing and model availability can change — check the live site before you budget a campaign.&lt;/p&gt;




&lt;p&gt;Marketing teams rarely lack ideas. What they lack is time between “we need a new angle for this SKU” and “the creative is ready for Meta, TikTok, and the PDP.”&lt;/p&gt;

&lt;p&gt;A familiar loop: one approved product photo sits in Drive. Someone opens three AI tools — studio still, vertical crop, short clip — then pastes outputs into Slack and the ad account. Credits, logins, and “which model did we use last week?” pile up. The photo is fine. The process is not.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://relayme.ai" rel="noopener noreferrer"&gt;RelayMe&lt;/a&gt; is built around a narrower bet: keep the product photo as the source of truth, wire the steps once on a visual canvas, and price each model in credits before you run. Image, video, and text nodes share one balance. The output of one step can feed the next.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem is fragmentation, not “AI quality”
&lt;/h2&gt;

&lt;p&gt;Most teams already tried standalone generators. Image quality can be good enough for tests. The friction shows up elsewhere:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Tool sprawl&lt;/strong&gt; — stills, upscales, and video in separate tabs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Opaque cost&lt;/strong&gt; — you learn what a clip cost after it finishes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inconsistent handoff&lt;/strong&gt; — the 1:1 hero and the 9:16 story ad diverge after the first edit&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hard to redo&lt;/strong&gt; — when the brief changes, you rebuild the chain from memory&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A workflow canvas does not magically fix brand risk or model drift. It does make the pipeline visible: input → candidates → upscale or outpaint → video → download. Swap the photo; keep the same settings.&lt;/p&gt;

&lt;h2&gt;
  
  
  One photo, four practical steps
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Start with an Image input
&lt;/h3&gt;

&lt;p&gt;Upload a product photo you have rights to use. Keep label text, silhouette, and color as the reference for every later check. Treat AI as a production assistant, not as the brand owner of record.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Generate studio or lifestyle candidates
&lt;/h3&gt;

&lt;p&gt;Connect an image model — for example Nano Banana Pro or GPT Image variants in the selector — and describe the scene. Generate a small set of candidates (1–4 per image task), then compare each against the original: label spelling, proportions, packaging color.&lt;/p&gt;

&lt;p&gt;Do not batch ads until at least one still passes that check. Upscale and video will amplify whatever is already wrong.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Upscale or outpaint for placement
&lt;/h3&gt;

&lt;p&gt;Approved stills often need a higher tier (2K / 4K) or a different aspect ratio. Outpaint to 9:16 for Stories and Reels; keep square or 4:5 for feed. Upscale and Outpaint are separate modes on supported sale-channel models — the selector shows which options apply.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Animate with a video node that accepts a first frame
&lt;/h3&gt;

&lt;p&gt;Use the approved image as the first frame (or reference, depending on the model). Pick duration, resolution, and audio, then review the credit estimate before you run.&lt;/p&gt;

&lt;p&gt;Video models currently listed include &lt;strong&gt;Veo&lt;/strong&gt; (Veo 3.1 / Veo 3.1 Fast), &lt;strong&gt;Grok Imagine&lt;/strong&gt;, and &lt;strong&gt;MiniMax&lt;/strong&gt; (MiniMax-H3). Image options include GPT Image family models and others on the pricing page. Availability is whatever the live selector shows. RelayMe hosts a canvas that calls third-party models; it does not train its own.&lt;/p&gt;

&lt;p&gt;Review motion the same way you reviewed the still: product shape, labels, and whether the motion fits the channel.&lt;/p&gt;

&lt;p&gt;Wire those four steps once. Next SKU: replace the input photo and rerun.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why credit pricing matters for marketing ops
&lt;/h2&gt;

&lt;p&gt;Ad creative is a volume game with a cost ceiling. RelayMe prices generation in credits: you see the estimate for the model, settings, and output tier before a run. Subscription credits refill monthly and do not roll over; separately purchased top-ups do not expire. Trial credits, when an offer is active, follow the validity shown at sign-up.&lt;/p&gt;

&lt;p&gt;Public plans as of this writing (USD, monthly):&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Plan&lt;/th&gt;
&lt;th&gt;Price&lt;/th&gt;
&lt;th&gt;Monthly credits (listed)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Freemium / top-up&lt;/td&gt;
&lt;td&gt;Trial or pay-as-you-go credits&lt;/td&gt;
&lt;td&gt;Varies by offer / purchase&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Starter&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;$19&lt;/strong&gt;/mo&lt;/td&gt;
&lt;td&gt;20,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Basic&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;$32&lt;/strong&gt;/mo&lt;/td&gt;
&lt;td&gt;35,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Pro&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;$90&lt;/strong&gt;/mo&lt;/td&gt;
&lt;td&gt;110,000&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Images are often tens to a few hundred credits each; video is priced per second (often from around 100 credits/s depending on model and settings). A short clip usually costs more than several stills — so stills first, then animation.&lt;/p&gt;

&lt;p&gt;No vanity metrics: your cost is whatever the estimate and pricing table say for that run. RelayMe is self-funded and based in &lt;strong&gt;Hong Kong&lt;/strong&gt; (support Mon–Fri, 09:00–17:00 UTC+8).&lt;/p&gt;

&lt;h2&gt;
  
  
  Good fit — and limits
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Good fit:&lt;/strong&gt; e-commerce teams producing many variants from a small photo library; performance marketers testing hooks without a full studio day; agencies that want a reusable chain; anyone who wants one bill across image + video steps.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Not a substitute for:&lt;/strong&gt; guaranteed pixel-perfect packaging (always QC labels); loading local LoRAs or custom checkpoints (not supported); unlimited free generation; automatic commercial rights beyond applicable terms — check RelayMe’s terms, the model provider’s terms, and your own input rights before publishing ads.&lt;/p&gt;

&lt;h2&gt;
  
  
  A simple team checklist
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Lock one reference photo per SKU.&lt;/li&gt;
&lt;li&gt;Generate 2–4 still candidates; keep only matches.&lt;/li&gt;
&lt;li&gt;Upscale / outpaint for each placement.&lt;/li&gt;
&lt;li&gt;Animate only the winners; compare models if needed (Veo vs Grok Imagine vs MiniMax on the same first frame).&lt;/li&gt;
&lt;li&gt;Export, QC labels again, then upload to the ad platform.&lt;/li&gt;
&lt;li&gt;Save the workflow so the next product does not reinvent the graph.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Try it without rewriting your stack
&lt;/h2&gt;

&lt;p&gt;Register without a credit card when an eligible trial is active; the intro credit amount and expiry are shown at sign-up. Start with image nodes so you learn the QC loop before spending heavier video seconds. Pricing, model list, and credits are on the public pages at &lt;a href="https://relayme.ai" rel="noopener noreferrer"&gt;relayme.ai&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Marketing creative will keep changing. The useful constant is a pipeline you can inspect, price, and rerun — starting from the one product photo you already trust.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Questions about plans or models? Email &lt;a href="mailto:support@relayme.ai"&gt;support@relayme.ai&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>ai</category>
      <category>marketing</category>
      <category>saas</category>
    </item>
  </channel>
</rss>
