---
title: "CSV upload"
description: "Upload a CSV or TSV file as the rows for a batch. Each row becomes a creative, and the header row names the fields your template fills."
url: https://kalpana.one/integrations/csv-upload
---

# CSV upload

Upload a CSV or TSV file as the rows for a batch. Each row becomes a creative, and the header row names the fields your template fills.
Kind: data. Availability: live.

Most stores and spreadsheet apps can export a CSV. Upload it as it is: every row becomes a creative, and every column fills a layer.

Nothing to connect and no account to link. Use it for a one-off sale, a supplier's product list or an export from a tool Kalpana does not connect to yet.

## Prepare the file

1. Put one header row at the top, then one row per creative.
2. Name each column after the template field it fills, like title, price or image.
3. For image fields, use the file name of an image in your asset library. In a campaign-feed CSV you can also put a public image URL: Kalpana downloads it into your library first and renders from there, never from the link.

Note: Starting from scratch? In the batch builder, click **Download template CSV** to get a file with your template's fields as headers.

## Run a campaign feed from a CSV

A campaign feed runs the same rows through one or more templates.

1. Open **Campaign Feeds** from the sidebar and click **Create batch** on a feed.
2. Under **Data source**, choose **CSV**, then click **Choose CSV or TSV** and pick your file.
3. Add the templates you want under **Templates**.
4. Click **Preview batch** to check every creative.
5. Validate the rows, create the batch, then run it.

Note: Image URLs in mapped image columns are downloaded into your workspace, so the batch never depends on the original link.

## Upload a CSV to one template

1. Open a template and start a new batch.
2. Drag your file onto **Upload a CSV file**, or click to browse. Files up to 4 MB are accepted.
3. Columns are matched to template fields automatically. Check the matches, then fix any row in the grid.
4. Turn on **Disable layers that are empty** to hide a layer when its cell is blank, such as the discount text on a full-price product.
5. Image cells hold the file name of an image already in your asset library. On this path a link is not fetched, so upload or import the photo first.
6. Preview the rows, then create and run the batch.

## FAQ

**Do I need to connect anything first?**
No. A CSV upload needs no connection. Pick the file when you create a batch.

**Can I export from my store or marketplace and upload that?**
Yes. Any export with a header row works. Name or map the columns to your template fields.

**Can I paste rows instead of uploading a file?**
Yes. Copy rows from Excel, Google Sheets or Numbers, header row included, and paste them into the batch. Or start with a blank sheet and type them in.

**How big can the file be?**
Up to 4 MB per CSV upload. Larger catalogs can be split across several batches.

**What happens if I change the file later?**
The batch keeps the rows it was created with. Upload the new file when you create the next batch.
