A testimonial image generator turns one approved quote into a branded card. jsontoimg fills the quote, customer name, role, and avatar on named layers, so a spreadsheet of reviews becomes a folder of consistent social images. It suits marketing teams with a steady stream of customer quotes and no designer free to lay out each one.
Layers that change per card
quote: the text, with auto-fit turned on so long quotes shrink rather than overflownameandrole: short stringsavatar: an image layer that takes a publichttpsfile ending.png,.jpg,.jpeg, or.webpcompany_logo: optional image layer
Keep the quote marks, rules, and brand colours in the design. Changing them then means one template edit, not a card-by-card fix.
Render a card
{
"template": "<design-id>",
"format": "png",
"layers": {
"quote": { "text": "We replaced a weekly design chore with a script." },
"name": { "text": "Priya Raman" },
"role": { "text": "Head of Growth, Northwind" },
"avatar": { "image_url": "https://example.com/avatars/priya.jpg" }
}
}
Test the extremes
Render a one-line quote, a four-line quote, and a long name before you run the list. Auto-fit handles overflow, but a layout tuned for a short quote can look cramped at the longest. Use "dryRun": true to validate a payload without spending a credit.
Get permission first
A rendered card is a published claim. Only use quotes the customer has agreed to share, and store the approval next to the row. jsontoimg does not check consent or verify that a quote is genuine; that belongs in your review step before the data reaches the template.
Where the data lives
A CRM export, a review spreadsheet, or an Airtable base all work. For a sheet, the Google Sheets add-on renders selected rows. For Airtable, use the custom extension. For anything event-driven, use n8n.
Related
FAQ
What is a testimonial image generator?
A tool that turns a customer quote into a branded image from a template. jsontoimg fills the quote, name, role, and avatar on named layers.
How do I stop long quotes overflowing the card?
Turn on auto-fit for the quote layer and render a very short and a very long quote before the full run.
Can I check a testimonial payload without using credits?
Yes. Send dryRun: true with the real payload. It validates layers and values and returns valid: true with no job and no credit.
Does jsontoimg verify that a testimonial is genuine?
No. It only places the text you send. Check consent and authenticity before the quote reaches the template.