Snapchat Dynamic Story ads: 360x600 preview tile, 993x284 logo
Snap Dynamic Story ads show 3 to 10 catalog products from a Discover tile: 360x600 PNG, 993x284 logo, 55-character headline. Make the tile with Sume.

A Snapchat Dynamic Story ad pulls a series of 3 to 10 product ads from your catalog and shows them as a Story from a tile in the Discover tab. The one piece you make by hand is the preview tile: a 360 x 600 px PNG of 2 MB or less, with a 993 x 284 px transparent PNG logo on top and a headline of up to 55 characters.
These specs come from Snap's Dynamic Story Ads Guide, read on 2026-10-03. It is a Marketing API guide, so every step below is an API entity, not an Ads Manager screen.
Which assets does a Dynamic Story ad need?
Snap builds the ad from a preview creative plus ten dynamic creatives, grouped by a composite creative. The preview can be static (two media you upload) or dynamic (the tile image is fetched from the product set).
| Asset | Spec | Where it is set |
|---|---|---|
| Preview media (tile) | 360 x 600 px, PNG, 2 MB max, media type IMAGE | preview_media_id in preview_properties |
| Logo media | 993 x 284 px, PNG on a transparent background, 2 MB max, media type IMAGE | logo_media_id in preview_properties |
| Preview headline | Up to 55 characters, emoji Unicode allowed | preview_headline in preview_properties |
How is the ad built, and where does it run?
Snap's creation order, from the top, is: the preview creative, an optional static creative, ten dynamic creatives, the composite creative, the ad squad (including product_audiences), then the ad with Story type. The guide describes four variants, mixing a static or dynamic preview with or without a static creative, and each ends in ten dynamic ads.
Availability, per the guide: Website and Deep Link campaigns support both prospecting and retargeting audiences, and App Install campaigns support prospecting only. Before you set up creative elements, Snap says to check that your product feed and product set support the interaction, using Product Search with the ELIGIBLE_AD_TYPE filter (APP_INSTALL, DEEP_LINK_ATTACHMENT or REMOTE_WEBPAGE).
How do I make the 360x600 tile with Sume?
The tile is 3:5, which is not one of the ratios in Sume's Image API list (that list includes 9:16, 2:3 and 3:4). The least lossy route is to generate at 9:16, then crop. At 360 px wide, a 9:16 image is 640 px tall, so you trim 40 px, about 6 percent, from the height. Read supported_parameters first, because a model only accepts the ratios it advertises.
Leave room in the composition: Snap overlays the logo on the tile, so keep a clear area for it and check the placement in a preview. Make the logo itself from your brand files, not from a model, because a generated logo will not match your trademark. The script below resizes and center-crops a 9:16 render to the exact tile size and checks the 2 MB limit.
import os
from PIL import Image
im = Image.open("tile_9x16.png").convert("RGB") # a 9:16 render from Sume
w, h = im.size
im = im.resize((360, round(h * 360 / w))) # 9:16 becomes 360 x 640
top = (im.height - 600) // 2
im.crop((0, top, 360, top + 600)).save("preview.png", optimize=True)
print(Image.open("preview.png").size, os.path.getsize("preview.png") <= 2_000_000)Checks before you create the media entities
Upload the tile and the logo as separate IMAGE media, then confirm the sizes and the transparent background of the logo before the creative request. The preview headline is part of the same preview, so write it to stand on its own at 55 characters or fewer. If you would rather not make a static tile at all, the dynamic preview variant pulls the tile image from the product set, and the work moves to the quality of your catalog images, covered in Snap DPA for Sponsored Snaps.
Sources
Related posts
More in Use cases
- Spain's AI bill and AI labels: in Congress, not law yet
Spain's AI governance bill reached Congress in June 2026 with fines up to 35 million euros. Is AI video labelling Spanish law yet, and what to check on a file?
- Spanish song lyrics from an AI music prompt: write it in Spanish
Google says Lyria lyrics follow the prompt language. For a Spanish track on Sume, write the prompt and lyrics in Spanish, then read the lyrics section map.
- A speaker withdrew voice consent: finding every narration that used it
Revocation is a clean-up job. Build a manifest of voice, model and job id for each narration, then regenerate with another voice and join audio on Sume.
- Splice an AI ending onto a Short and keep the original audio
Gemini Omni clips come with their own sound. To keep your Short's voice and music, detach both audio tracks and join them as audio parts in one Timeline render.
Written by Sume