From a spreadsheet to finished images
Plenty of image work is the same design over and over with different words. A shop needs a card for every product with its name, price and photo. An event organiser needs a badge or a session card for every speaker. A teacher needs a certificate for every student. A creator needs a quote image for every quote in a list. Doing that by hand means copying and pasting into a template dozens of times, and every repetition is a chance for a typo or a mismatched photo.
Bulk create does the repetitive part from a table. You keep doing what spreadsheets are good at — collecting and checking data — and the tool turns each row into a finished image with the same layout, fonts and spacing. Change the table and run it again, and every design updates together.
Everything happens in your browser. The table you paste, the photos you choose and the designs it makes never leave your device, which matters when the table is a product list before launch, a class list, or anything else you would rather not upload.
Preparing your table
Put one design per row and one kind of information per column, with a header row naming the columns: title, price, sku and photo, for example. Any spreadsheet can save that as CSV, or you can copy the cells and paste them straight into the tool. The separator — comma, semicolon or tab — is detected for you, so tables from spreadsheets set to other regional formats work too.
The reader follows the CSV standard closely. Values in quotes can contain commas and even line breaks, which is how you put a two-line title into one cell. Doubled quotes inside a quoted value become a single quote. Blank cells are allowed. If some rows have more or fewer cells than the header, the tool says so and fills the gaps with blanks rather than shifting values into the wrong columns.
Values are text, always. Leading zeros on product codes stay, formulas are shown rather than calculated, and nothing in a cell can be interpreted as code. Non-Latin scripts such as Bangla, Arabic or Devanagari are drawn as typed; when the template's font doesn't include those letters, the browser's own fonts fill in for them.
Connecting columns to the template
After you choose a template, every text box and photo area it contains appears in a list, labelled with the text it shows today. Next to each is a menu of your columns. Pick the column that should replace that text, or leave it on Keep the template text for things that are the same on every design, such as your shop's name. The tool suggests obvious matches — a price column for a price-looking box, a title or name column for the largest heading — but every choice is yours.
Connections are made to the template's layers, not to whatever text they happen to show, so editing the words in a template can never quietly move your price into the title. For each connected text you can also set what appears when a cell is empty, for example "Coming soon" for a missing price.
Choose a column to name the files — a SKU or product name is usual — and each design is saved under that value, cleaned of characters file systems refuse and made unique if two rows share a name. Leave it on Row number and the files are named row-001, row-002 and so on.
Photos from your device, matched by name
Product and thumbnail templates have a photo area. Give your table a column with each row's photo file name and choose those photos from your device; the tool matches them up. It tries the exact name first, then ignores capital letters, then ignores the extension and spacing, so Linen Shirt.JPG still matches linen-shirt.jpg.
Two problems are reported instead of guessed at. If two chosen photos could both be the one a row names, the tool lists them and you choose. If no chosen photo matches, that row is held back with a message naming the file it looked for, while every other row carries on. A photo from one row can never end up in another, because every design starts again from the untouched template.
Photos fill their area the way the template designer intended: scaled to cover it, centred, with the area's rounded corners. Cells holding web addresses are never fetched — the job stays private and doesn't depend on someone else's server — but their file name part is used, so downloaded files still match.
Checking every design before you export
The preview shows the design for any row, drawn by the same renderer that makes the final files, so what you check is what you get. Step through rows one at a time, jump to the first or last, or go straight to the first row with a problem.
Long text is the most common problem with any template. Each connected text box knows how much room it has — up to the template's margins or the next text box beside it — and long values shrink to fit, never below the minimum size you set. Rows whose text still won't fit are flagged before you export, with the box named, so you can shorten that cell or lower the minimum. Nothing is clipped without telling you.
Untick any row you don't want, and rows waiting on a photo fix are left out until it's fixed. The export button always says how many designs it is about to make.
Exporting, limits and what's next
Choose PNG for crisp graphics, JPEG for the smallest photos, or WebP. Designs are made one at a time with progress you can cancel; finished designs are kept, so a cancelled or partly failed job can be downloaded as it stands or finished later without redoing the rows that worked. The ZIP includes a manifest listing every row, its file name, and why any row was skipped. How many designs one job makes depends on your plan, and the number is shown before you import and again before you export; no plan adds a watermark.
Save the mapping to reuse the same setup with next month's table. When the ZIP is ready, the batch tools can compress or convert the whole set, and the watermark tool can brand each design. For one-off designs, open a template in the editor instead.