Blog

Scale Banner Ads From a Spreadsheet: One Banner, a Whole Campaign

Step-by-step tutorial: copy a table from Google Sheets or Excel, paste it into Foldwrap, and turn one banner into a set of variants with copy, prices and images per row.

Alex7 min read

A marketer holding a spreadsheet whose rows turn into five hotel banners, each with its own city photo

Scaling banner ads should not mean rebuilding the same creative over and over. Build one banner, keep the copy and images for every market or offer in a spreadsheet, and let Foldwrap create the variants.

Google Sheets, Excel and CSV all work: you copy the table and paste it, no connection needed.

This tutorial follows one real campaign: a hotel brand with a banner for Lisbon and a Google Sheet with four more cities. Each city gets its own headline, hotel name, price, call to action and photo. Every step is covered, from pasting the table to exporting the finished set.

Follow Along With the Example Files

Download the banner and the data used in this tutorial, and try every step yourself:

To set it up:

  1. Sign in to Foldwrap, open the Library, click + New and choose Import .foldwrap package…. Pick the downloaded file. What is a .foldwrap package?
  2. Open the imported creative, Mireva Hotels variants. The five photos are in its Assets tab.
  3. Open the spreadsheet in Google Sheets or Excel, select the table with its headings, and copy it. Or click Copy example data under the table in Step 2.
  4. Continue from Step 3: Paste the Table.

What You Need

  1. One finished banner. Layout, motion and fonts are in place. This is the master every variant is made from.
  2. The images, in the creative. Upload them in the Assets tab, or have their direct links ready.
  3. A table. One row per variant, one column per text or image, in any spreadsheet you can copy from.

Step 1: Prepare the Master Banner

Open the banner you want to scale. Here it is the 300×600 Lisbon banner. Its text and photo will be replaced in every variant; layout, fonts and animation stay as they are.

Mireva Hotels 300x600 master banner in the Foldwrap editor, with the city photos in the Assets tab

The city photos are already in the Assets tab: lisbon.jpg, porto.jpg, valencia.jpg, seville.jpg and malaga.jpg. The tab shows them without the extension, and the spreadsheet can use either form.

Leave room in your text boxes. A headline box built for two lines survives a longer translation or a bigger price. Text that is too long is flagged in the preview, before any variant is created.

Step 2: Set Up the Spreadsheet

Put one variant on each row and one field on each column. Headings are optional, but they make the next steps easier to follow.

DestinationHeadlineProperty nameDisclaimerRate FromCTAImagevariant_id
LISBONStay a little longer.Mireva AlfamaPer night. Breakfast included.€129Explore this staylisbonlisbon_alfama
PORTORiverside mornings.Mireva RibeiraPer night. Breakfast included.€109Explore this stayportoporto_ribeira
VALENCIAGarden mornings.Mireva GardenPer night. Breakfast included.€119Explore this stayvalenciavalencia_garden
SEVILLE3 nights, 15% offMireva CourtyardPer night. Late checkout included€139Claim discountsevilleseville_courtyard
MÁLAGAStay for the sunset.Mireva CoastPer night.€149Explore this staymalagamalaga_coast

A few things that help:

  • Values are used exactly as written. Prices, currency symbols, punctuation and line breaks go into the banner as they are in the sheet. Nothing is translated or reformatted.
  • An image cell is a file name or a link. malaga or malaga.jpg picks that file from the creative's assets. A direct link to a PNG, JPEG, WebP, GIF or SVG image is downloaded into the creative.
  • A name column is worth adding. Here variant_id names the new variants: 300x600_porto_ribeira, 300x600_malaga_coast and so on.
  • A reference row is optional. If one row repeats what the banner already shows (the Lisbon row here), Foldwrap uses it to match columns to elements automatically.

Select the table in Google Sheets, headings included, and copy it.

Step 3: Paste the Table

In the editor, open the Creative tab and click Create from spreadsheet… under Batch edits. Paste the table.

Create from spreadsheet dialog, Paste step: the hotel table with headings detected, the Lisbon row marked as reference and four rows selected

Foldwrap shows the table as it read it:

  • First row is headings is detected automatically. Untick it if your first row is data.
  • Separator is detected too. Change it if the columns look split wrong.
  • The tick boxes choose which rows become variants.
  • The Lisbon row matches the current banner, so it is marked Reference. It is used for matching, and not created a second time. Tick it if you want a copy anyway.
  • The line under the table tells you how many variants will be created, and which column names them.

Click Match columns.

Step 4: Match Columns to Elements

Every column needs a decision: it goes into an element, it names the variants, or it is ignored. Most columns are matched for you, with the reason next to each one: Matches “Mireva Alfama” means the reference row found that text in the banner.

Match step: each column matched to a banner element, the Headline column picked by hand and highlighted on the banner preview

Here the Headline column was not matched. The sheet says “Stay a little longer.” with a full stop, and the banner doesn't, so the reference row couldn't find it. To fix a match:

  1. Select the column on the left.
  2. Click the element on the banner preview, or pick it from the layer list below.

Shift-click a second element when one column should fill several, like a price that appears in two scenes. Use the scene buttons above the preview when elements of different scenes overlap.

The Image column works the same way. Image columns go into image elements, text columns into text.

A few more options:

  • Empty cells: choose whether an empty cell keeps the original text, leaves the element empty, or asks you each time. An image keeps the original or asks.
  • Elements inside a symbol can be matched too. Each new variant then gets its own copy of that symbol, no longer updated from the original one.

When every column is decided, click Preview variants.

Step 5: Check Images and Preview Every Variant

The Images panel lists every image value in the sheet, the file it was matched to, and the element it goes into.

Preview step: four city images matched by name, and the Seville variant previewed with its own headline, price, photo and Claim discount button
  • Matched by name: “seville” in the sheet is seville.jpg in the creative's assets.
  • Upload images… adds several files at once. Each file goes to the cell with the same name.
  • Upload… or Change… on a row sets that value's image directly.
  • If two different files share a name, you choose one. If a file is missing or a link can't be used, that row is blocked until you fix it or skip it. Foldwrap never silently keeps the old image.
  • Fit and Crop set how the new images fill their box: as in the banner, Cover or Contain, and which side a crop keeps.

Below, click through the variants. Each one is rendered with its new content, and the table under it lists every change: element, before, after. Before shows the master for comparison. Text that might not fit its box is flagged here, while it is still easy to shorten.

You can also rename a variant in its name field.

Step 6: Create and Export

Click Create. The new variants appear in the Variants list, right after the master, in sheet order.

Foldwrap editor with the master and four new city variants; the Malaga variant open with its own photo, headline and price

They are regular variants with the master's animation. Edit any of them like any other banner. A single Undo removes the whole batch, if you want to change the sheet and try again.

To deliver, click Export and choose Export all variants HTML5.

Export menu with Export all variants HTML5 (x5)

Foldwrap packages every variant and gives you a review link for your client. The export and review steps are shown in detail in the Figma plugin tutorial.

Troubleshooting

  • A column isn't matched. Its value in the reference row differs from the banner's text: a full stop, a different word, another price. Upper and lower case don't matter. Match it by hand, or make the reference row identical to the banner.
  • An image isn't found. The cell must equal the file name, with or without the extension. Check the spelling and the case, or use Upload… or Change… for that row.
  • A link doesn't work. Share links from Google Drive, Dropbox, OneDrive and similar services open a web page, not the image. Use a direct image link, or download the file and upload it.
  • Fewer variants than rows. One row matched the banner and became the reference row. Tick it on the Paste step to create it as well.
  • “Text may not fit”. Shorten the copy in the sheet and paste again, or resize the element after creating.

Where This Helps Most

  • Multi-market campaigns, with copy and prices per language or country
  • Hotels, travel and real estate, with one photo and price per listing
  • E-commerce promotions with frequent offer changes
  • Agency teams producing the same template for many clients

For a vertical example, see how to automate real estate ads. If you're scaling a library built in Adobe Animate, its 2026 maintenance-mode status is worth reading before you invest further: see Adobe Animate end of life: what it means for HTML5 banner production.

Best Practices for Cleaner Scaling

  1. Approve the master's layout and motion before you scale it. Every variant inherits them.
  2. Build text boxes with room for the longest row, not the master's copy.
  3. Keep one name column, so variants are easy to find and deliver.
  4. Name image files after the variant they belong to, so they match automatically.
  5. Check prices, legal text and CTAs in the preview before creating.

FAQ

Do I need an integration to scale banners with Google Sheets?

No. Copy the table in Google Sheets or Excel and paste it into Foldwrap. A CSV works too.

Can each variant have its own image?

Yes. Add an image column with a file name from the creative's Assets tab, or a direct image link. Foldwrap matches the files by name and shows them before anything is created.

Do I need a reference row that matches the current banner?

No. It only helps Foldwrap match columns automatically. Without it, click each column's element once.

Can I scale several banner sizes at once?

Each import works from the variant that is open. Run it once per size, or create the variants at one size and use Resize for the others.

Can I use this for multilingual campaigns?

Yes. Add one row per language or market. Values are used exactly as written, so translations, currencies and punctuation stay as you prepared them.

Do I need coding skills?

No. The workflow is no-code.

Scale banner ad production from a spreadsheet with Foldwrap

Keep reading

A banner producer with a magnifying glass inspects a modern balance scale: a crate and a thick iceberg photo slab weigh one side down, while a slim banner with the same photo rises on the other

CreateJS Banner Weight: Adobe Animate Canvas vs HTML/CSS

Marketer reviewing creative animated display ads examples

Animated Display Ads Examples: 12 HTML5 Banner Concepts

Designer comparing animation and design tools with a magnifying glass

11 HTML5 Banner Ad Tools Compared (2026)