Dynamically create infographics using n8n


Learn how to dynamically create infographics using this simple but powerful n8n workflow.

Dynamic infographic automation Flow

Dynamic infographic automation flow

How to recreate this automation


Step 1: Create an n8n workflow

Create a new workflow in n8n. Your final workflow will end up looking like this: Final n8n workflow

Step 2: Create a webhook node

In your n8n workflow create a webhook node - make sure that the you are responding with the Respond to Webhook node in the settings. This makes sure that the whole workflow will get executed before returning the modified image. Webhook node screenshot

When you call this webhook via its URL you can use a querystring parameter to pass in data. If your Webhook node URL is http://n8n.io/webhook/my-webhook-url you can add a querystring parameter like this: http://n8n.io/webhook/my-webhook-url?stat=1900 (here it is named stat as this is what we use in the video tutorial). You can then use this stat variable later when we edit the image.

Step 3: Get the image template

Use a HTTP Request node to load the image template. Update the URL input to the URL of your template image and change the Response Format to File.

HTTP Request node for the image template screenshot

Step 4: Dynamically add text to the image

Now we have the image template (Step 3) and the stat value (Step 2) we can combine them so the image contains the stat value. We do this with an Edit Image node. Below you can see the image prior to the node being executed on the left and after node execution on the right. As you can see we have added the value from stat (1900) to the image. Edit image node screenshot

Use the Text input's Expression editor to select the querystring data from Step 2. The value we pass in when we call the URL is now used to generate the image. Text input expression editor screenshot

Step 5: Return the finished image

The final step is to return the image to the user and end the workflow. We do this with a Respond to Webhook node. Make sure that Respond With is set to Binary and Response Data Source is set to Choose Automatically From Input. Respond to Webhook screenshot

Now save the workflow, set it to Active and hit the production URL of the initial Webhook with a query param.

If you enjoyed this we would ❤️ you to retweet or like this tweet