Making many versions from a spreadsheet in Paint by Zaweba
Image > Variables in Paint by Zaweba links text, images and visibility to CSV or TSV rows, then exports one file per row. Ideal for badges, cards and labels.

Name badges for an event, certificates for a class, price cards for a shop, social posts for each product in a range: these are all the same design with different words and pictures. Doing them one by one is slow. Image > Variables in Paint by Zaweba lets one design pull its content from a spreadsheet, and File > Export > Data Sets as Files writes one finished file per row.
The three kinds of variable
A text variable links a text layer to a column. Each row puts its own words into that layer: a name, a title, a price, a date.
An image variable links a layer to a picture file named in a column, so each row can show a different photo or logo.
A visibility variable switches a layer on or off per row. That handles cases like a "Speaker" ribbon that appears only on speakers' badges, or a "Sale" sticker that shows on some products and not others.
Bringing in the data
You import rows from a CSV or TSV file, which almost any spreadsheet program can save. Put a header row at the top naming each column, then one row per item. Keep the data simple: one value per cell, no merged cells, and image columns containing file names or paths that Paint by Zaweba can find.
Once imported, you can step through the rows and see the design update for each one. This is the moment to catch problems: a long name that runs off the badge, a photo with the wrong proportions, a price that needs a currency sign.
One file per row
File > Export > Data Sets as Files writes one file per row. A list of 200 attendees becomes 200 badges in one go. From there you can print them, run them through a batch, or send them on.
Designing for variable content
Leave room. Text that fits "Sam" will not fit "Alexandra Montgomery". Design for the longest likely value and check the extremes while stepping through rows.
Use consistent images. If photos come in different shapes, crop them to a standard size before importing, or mask the image layer to a fixed shape so nothing spills over.
Keep the master clean. Use clear layer names like "name", "role" and "photo" so the links between layers and columns are obvious later.
Check spelling in the spreadsheet, not the design. Every typo in the data turns up on a finished file.
Common uses
Event badges and place cards. Certificates with names and dates. Product cards and shelf labels. Team pages with photos and roles. Personalised social graphics, such as a "welcome" image for each new member. Any time the design is fixed and the content varies, variables save time.
Pairing it with other automation
Variables work alongside the other automation in Paint by Zaweba. You might export data sets, then run a batch action to resize them for the web, then rename them with Batch Rename. For layouts that need logic rather than straight substitution, scripting can take over. It is all offline, which matters when the spreadsheet contains names and details of real people.