How it works
RenderPix is a REST API. You POST HTML, you get an image back. Make.com’s HTTP module can call any REST API, which means you can use RenderPix in any Make.com scenario — connected to Google Sheets, Airtable, Typeform, Gmail, Slack, or anything else in Make’s library.
No native integration needed. One HTTP module, one API call, one image.
What you need
- Make.com account — free tier works
- RenderPix API key — get one free at renderpix.dev
- A data source — Google Sheets, Airtable, a form, anything Make.com connects to
Step-by-step: Instagram post generator
We’ll build a scenario that reads rows from Google Sheets and generates a 1080×1350px Instagram image for each one.
Add a Google Sheets module
Add the Google Sheets → Search Rows module. Connect your Google account, select your spreadsheet and sheet. Set the filter to return all rows (or filter by a "status" column to only process new ones).
Add an HTTP module
Add the HTTP → Make a request module. This is where you call RenderPix.
Configure the HTTP module
Fill in the HTTP module settings as follows:
| Field | Value |
|---|---|
| URL | https://renderpix.dev/v1/render |
| Method | POST |
| Headers | X-API-Key: your_api_key_here |
| Body type | Raw |
| Content type | JSON (application/json) |
| Request content | See JSON body below |
| Parse response | No (response is binary image data) |
For the request body, use Make.com’s variable mapping to inject your sheet data:
{
"html": "<!DOCTYPE html><html><head><meta charset='UTF-8'><style>* { margin: 0; padding: 0; box-sizing: border-box; } body { width: 1080px; height: 1350px; font-family: Arial, sans-serif; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); display: flex; align-items: center; justify-content: center; } .card { width: 900px; text-align: center; color: white; } .title { font-size: 64px; font-weight: 800; line-height: 1.1; margin-bottom: 24px; } .subtitle { font-size: 28px; opacity: 0.85; }</style></head><body><div class='card'><div class='title'>{{1.title}}</div><div class='subtitle'>{{1.subtitle}}</div></div></body></html>",
"width": 1080,
"height": 1350,
"format": "png"
}
The {{1.title}} and {{1.subtitle}} are Make.com variable references to your Google Sheets columns (module 1, field "title").
Keep HTML on one line in the JSON body. Make.com’s JSON body editor doesn’t handle multiline strings well. Minify your HTML template before pasting it into the body field.
Save the image
The HTTP module returns the binary PNG data. Add a Google Drive → Upload a File module (or Dropbox, S3 via HTTP, etc.) to save it. Set the filename to something like {{1.title}}-post.png.
(Optional) Post to social media
Connect a Buffer, Later, or social media module to schedule the post. Pass the image file URL from Google Drive as the attachment.
Other use cases
The same HTTP module setup works for any image generation use case:
| Use case | Trigger | Output |
|---|---|---|
| OG images | New blog post (webhook or RSS) | 1200×630px PNG → S3 |
| Certificates | Typeform or Google Forms submission | 1200×800px PNG → email attachment |
| Invoice previews | New row in Airtable | 800×1100px PNG → Google Drive |
| Event badges | Eventbrite registration | 600×900px PNG → email |
| Product cards | New Shopify product | 1080×1080px PNG → social queue |
Tips for working with HTML in Make.com
Minify your HTML template first
Long HTML templates are hard to manage in Make.com’s JSON body editor. Use an online HTML minifier, then paste the single-line result into your request body. The rendered output is identical — whitespace doesn’t affect Chromium rendering.
Use a Text Aggregator for dynamic HTML
If your HTML needs more complex variable substitution, add a Text Aggregator module before the HTTP module. Build your HTML string there with Make.com variables, then pass the result as the html field in your HTTP request.
Handle the binary response correctly
RenderPix returns binary image data, not JSON. In the HTTP module, set Parse response to No. The output will be a binary data bundle that you can pass directly to a file upload module.
Zapier works the same way
If you use Zapier instead of Make.com, the approach is identical. Add a Zapier Webhooks step, configure it as a POST to https://renderpix.dev/v1/render, set the X-API-Key header, and pass your HTML in the body. The binary response can be saved using a storage action.
Replace Figma with a single fetch call
Full HTML and CSS support. Pre-warmed Chromium — no cold starts. Free tier included.
Also see: Instagram carousel automation with n8n and auto-generate OG images with n8n.