Form BLOG-1From a spreadsheet to ten thousand finished imagesPixelDrive

From a spreadsheet to ten thousand finished images

A product catalogue, an event roster, a list of winners — if it fits in a spreadsheet, it can come out the other side as finished artwork.

PixelDrive··5 min read

Most bulk-image work starts life as a spreadsheet. Each row is one thing that needs a picture — a product, a session, a certificate, a price drop — and each column is a piece of data that changes. The painful part has always been the last mile: turning those rows into images without a designer opening a file ten thousand times.

The fix is to make the spreadsheet the input to a render, not the start of a manual process.

One column per variable

Design the artwork once and mark the parts that change — headline, photo, price, name — as variable fields. Then name your spreadsheet columns to match those fields. The mapping is the whole integration: column “price” fills the “price” field, row by row.

Everything you did not mark stays pixel-locked. Your logo doesn’t move, your safe-area holds, your brand colour is exact on row 1 and row 9,999.

One call, up to a thousand rows

Upload the CSV in the dashboard for a one-off run, or POST it to the batch endpoint from your own code. A single batch call renders up to 1,000 rows; chain calls for more. Each row returns a finished image at a stable URL, named and numbered so you can match output back to input.

POST /v1/render/batch
{ "templateId": "spring_sale", "rows": [
    { "name": "Anaïs", "price": "49 €", "lang": "fr" },
    { "name": "Tunde", "price": "₦24,500", "lang": "en" }
] }

What people actually run through it

  • E-commerce: a price-drop image for every SKU in a sale, refreshed nightly.
  • Events: a personalised badge or social card for every attendee.
  • Education: a certificate per learner, names rendered cleanly at any length.
  • Real estate / marketplaces: a listing card per property from the feed.
  • Localisation: the same row rendered into five languages by adding a column.

It survives becoming infrastructure

A demo renders one image. Production renders the catalogue every morning, inside a request budget, on brand, and serves the repeats from cache so the second run is nearly free. Because the design is a template and the data is a spreadsheet, the thing scales by adding rows — not by adding designers.

Put it into practice. The first thousand renders are on us.

Start free