Skip to main content

WhatsApp marketing dashboard with dynamic broadcasts from Google Sheets to Meta templates

Workflow preview

Workflow preview
100%
WhatsApp marketing dashboard with dynamic broadcasts from Google Sheets to Meta templates preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

This workflow provides a complete backend solution for building your own WhatsApp marketing dashboard. It enables you to send dynamic, personalized, and rich media broadcast messages to an entire c...

Best for

  • Social Media automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.stickynote, n8n-nodes-base.httprequest, n8n-nodes-base.webhook, n8n-nodes-base.datatable, n8n-nodes-base.googlesheets, n8n-nodes-base.code, n8n-nodes-base.wait, n8n-nodes-base.scheduletrigger

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Anirudh Aeran.

Original n8n.io source

1.1 Workflow description

Title
WhatsApp marketing dashboard with dynamic broadcasts from Google Sheets to Meta templates
Workflow name
WhatsApp marketing dashboard with dynamic broadcasts from Google Sheets to Meta templates

This workflow provides a complete backend solution for building your own WhatsApp marketing dashboard. It enables you to send dynamic, personalized, and rich-media broadcast messages to an entire contact list stored in Google Sheets.

The system is built on three core functions: automatically syncing your approved Meta templates, providing an API endpoint for your front-end to fetch those templates, and a powerful broadcast engine that merges your contact data with the selected template for mass delivery.

Who’s it for?

This template is for marketers, developers, and businesses who want to run sophisticated WhatsApp campaigns without being limited by off-the-shelf tools. It's perfect for anyone who needs to send personalized bulk messages with dynamic content (like unique images or links for each user) and wants to operate from a simple, custom-built web interface.

How it works

This workflow is composed of three independent, powerful parts:

Automated Template Sync: A scheduled trigger runs periodically to fetch all of your approved message templates directly from your Meta Business Account. It then clears and updates an n8n Data Table, ensuring your list of available templates is always perfectly in sync with Meta.

Front-end API Endpoint: A dedicated webhook acts as an API for your dashboard. When your front-end calls this endpoint, it returns a clean JSON list of all available templates from the n8n Data Table, which you can use to populate a dropdown menu for the user.

Dynamic Broadcast Engine: The main webhook listens for a request from your front-end, which includes the name of the template to send.

It then:

Looks up the template's structure in the Data Table.

Fetches all contacts from your Google Sheet.

For each contact, a Code node dynamically constructs a personalized API request. It can merge the contact's name into the body, add a unique user ID to a button's URL, and even pull a specific image URL from your Google Sheet to use as a dynamic header.

Sends the fully personalized message to the contact.

How to set up

  1. Pre-requisite - Front-end: This workflow is a backend and is designed to be triggered by a front-end application. You will need a simple UI with a dropdown to select a template and a button to trigger the broadcast.

  2. Meta for Developers: You need a Meta App with the WhatsApp Business API configured. From your app, you will need your WhatsApp Business Account ID, a Phone Number ID, and a permanent System User Access Token.

  3. n8n Data Table: Create an n8n Data Table (e.g., named "WhatsApp Templates") with the following columns: template_name, language_code, components_structure, template_id, status, category.

  4. Google Sheet: Create a Google Sheet to store your contacts. It must have columns like Phone Number, Full Name, and for dynamic images, Marketing Image URL.

  5. Configure Credentials: -> Create an HTTP Header Auth credential in n8n for WhatsApp. Use Authorization as the Header Name and Bearer YOUR_PERMANENT_TOKEN as the value.

    -> Add your Google Sheets credentials.

  6. Configure Nodes:

    -> In both HTTP Request nodes, select your WhatsApp Header Auth credential. Update the URLs with your own Phone Number ID and WABA ID.

    -> In the Google Sheets node, select your credential and enter the Sheet ID.

    -> In all Data Table nodes, select the Data Table you created.

  7. First Run: Manually execute the "Sync Meta Templates" flow (starting with the Schedule Trigger) once to populate your Data Table with your templates.

  8. Activate: Activate all parts of the workflow.

Requirements

  1. A Meta for Developers account with a configured WhatsApp Business App.

  2. A permanent System User Access Token for the WhatsApp Business API.

  3. A Google Sheets account.

  4. A front-end application/dashboard to trigger the workflow.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 2 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 4 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 5 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 6 - Get Templates from Meta

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 7 - Trigger: Send Broadcast

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2.1

Block 8 - Get Template Structure from Table

Type / Role
n8n-nodes-base.dataTable - dataTable
Config choices
Version 1

Block 9 - Get Contacts from Google Sheet

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.7

Block 10 - Dynamically Build Message Body

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 11 - Wait 1s Between Messages

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 12 - Send WhatsApp Message

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 13 - Sync Daily

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Block 14 - Get Existing Templates from Table

Type / Role
n8n-nodes-base.dataTable - dataTable
Config choices
Version 1

Block 15 - Clear Existing Templates

Type / Role
n8n-nodes-base.dataTable - dataTable
Config choices
Version 1

Block 16 - Split Templates into Items

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 17 - Save Templates to Data Table

Type / Role
n8n-nodes-base.dataTable - dataTable
Config choices
Version 1

Block 18 - API: Get Templates for Frontend

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2.1

Block 19 - Get All Templates from Table

Type / Role
n8n-nodes-base.dataTable - dataTable
Config choices
Version 1

Block 20 - Return Template List as JSON

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.4

Block 21 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 22 - Sticky Note6

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow WhatsApp marketing dashboard with dynamic broadcasts from Google Sheets to Meta templates
Complexity advanced
Nodes 22
Categories Social Media
Author Anirudh Aeran
Published 13 Oct 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/9553/9553.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does WhatsApp marketing dashboard with dynamic broadcasts from Google Sheets to Meta templates do?

This workflow provides a complete backend solution for building your own WhatsApp marketing dashboard. It enables you to send dynamic, personalized, and rich media broadcast messages to an entire c...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Social Media use case.