One row for every expected creative variant.
A campaign matrix is a list of the files a delivery must contain. Unlike a campaign calendar, it describes individual variants: market, language, channel, placement and technical rules.
For example, two markets with two languages and three placements need twelve rows if every combination is required. Mark optional variants explicitly so reviewers can distinguish a missing requirement from a deliberate omission.
- Open the CSV in Excel or import it into Google Sheets using a comma separator.
- Keep the English column headers. Replace the example rows with your own delivery requirements.
- Export as comma-separated UTF-8 CSV. Import that file into a VariantGate campaign.
The sample dimensions and byte limits illustrate a brief. They are not current platform specifications; confirm the rules with the destination before delivery.
What each CSV column means.
Market, locale, channel, format, width and height are required columns. The template includes the remaining fields so naming and delivery rules stay explicit.
| Column | Purpose and example |
|---|---|
id | A unique row identifier. Keep it stable when revising the brief.req-0001 |
campaign | The campaign token used in filenames, which can differ from the workspace display name.summer_launch |
market / locale | The target market and language. Use separate rows when either changes.de / de-DE |
channel / format | The destination and placement. Choose consistent tokens your filenames also use.meta / story |
width / height | Required image dimensions in pixels, entered as positive whole numbers.1080 / 1920 |
file_types | Accepted image extensions separated by a pipe. PNG, JPG/JPEG, WebP and GIF are supported.png|jpg |
max_bytes | The maximum file size in bytes. Use the limit agreed for this delivery.2097152 |
filename_convention | The filename pattern to check, including campaign, placement and version tokens.{campaign}_{market}_{locale}_{channel}_{format}_{version}.{ext} |
required | Use true for required variants and false for optional ones.true |
From a requirement row to a filename.
The first sample row requests a German story image for the summer launch campaign. It requires 1080 × 1920 pixels, PNG or JPG, and a maximum of 2,097,152 bytes (2 MiB).
summer_launch_de_de-DE_meta_story_v01.pngThis filename contains the expected campaign, market, locale, channel, format and version. A correct name alone does not prove the file is valid: the image dimensions, file type and byte size must also pass.
The download contains three required rows and one optional row. A missing optional file should not count as a missing required variant.
Turn the brief into a repeatable delivery check.
Create a free workspace, import your edited matrix, and select your local files, folder or ZIP. VariantGate checks coverage and file rules, then flags missing, invalid, duplicate and uncertain matches for review.
Inspection runs in your browser. The free workspace includes one audit per month; the synthetic sample can be explored without an account.
Read validation guide · Open the handoff checklist
Start with the example, then use your own campaign requirements.