Skip to main content

Automatically create Facebook ads from Google Sheets

Workflow preview

Workflow preview
100%
Automatically create Facebook ads from Google Sheets preview
Open on n8n.io

Important notice

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

1. Workflow Overview

Who is this for? This template is designed for Marketing Managers , Performance Marketers , and Ad Ops professionals who want to automate Facebook ad creation using structured data in Google Sheets...

Best for

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

Tools used

n8n-nodes-base.httprequest, n8n-nodes-base.facebookgraphapi, n8n-nodes-base.googlesheetstrigger, n8n-nodes-base.googlesheets, n8n-nodes-base.set

Source and attribution

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

Original n8n.io source

1.1 Workflow description

Title
Automatically create Facebook ads from Google Sheets
Workflow name
Automatically create Facebook ads from Google Sheets

Who is this for?

This template is designed for Marketing Managers, Performance Marketers, and Ad Ops professionals who want to automate Facebook ad creation using structured data in Google Sheets. It’s ideal for teams running multiple creatives or testing ad variations without having to manually use Meta Ads Manager.

> ⚠️ Important Note:
This is not a plug-and-play workflow. It requires:

  • A configured Facebook Business account
  • A valid Facebook App, Page, and Ad Account
  • Access tokens and the correct Facebook Graph API credentials
  • A basic understanding of the Meta API and JSON to tweak ad set parameters like demographics, optimization goals, or sales objectives

Additionally, launching Facebook ads will incur real advertising costs, so this template is best suited for users willing to make a time investment to set things up properly and test responsibly. Expect to spend time customizing targeting and budget strategies based on your campaign needs.

What problem does this solve?

Manually uploading creatives, setting up ad sets, and creating ads in Meta’s Ad Manager is time-consuming, repetitive, and error-prone—especially at scale. This workflow eliminates the manual work by pulling data from Google Sheets and using it to automatically:

  • Generate Facebook Ad Sets
  • Upload creative images
  • Build and launch Ad Creatives and Ads
  • Update your source spreadsheet with generated Ad IDs

What this workflow does

Using a trigger from a Google Sheets row update, this workflow:

  1. Reads ad parameters (like message, render URL, and campaign info) from a Google Sheet
  2. Generates ad set configuration dynamically using variables in an “Edit Fields” node
  3. Creates a Facebook Ad Set via the Graph API
  4. Fetches the ad image from a render URL
  5. Uploads the image to Facebook Ads Library
  6. Creates the Ad Creative using the uploaded image and dynamic text
  7. Launches the Ad using the generated Ad Set and Creative
  8. Updates the same Google Sheet with the generated Ad ID and status

All configuration fields like campaign_id, act_id, pixel_id, age ranges, interest targeting, and call-to-action links are defined up front in a single Edit Fields node, making the template easy to maintain or extend.

Google Sheet Structure
Hooks Render URL Generate Ad Ad ID
Static ad text (e.g., “Visit us at...”) Link to the creative asset (image) Status: generate, generated, or error Populated by the workflow with the created Facebook Ad ID
  • Hooks: This is the primary ad copy. It will be used as the main text for the static ad.
  • Render URL: Direct link to the media asset (image or video) for the ad.
  • Generate Ad: Dropdown or text value that controls workflow execution:
    • generate — workflow will attempt to create the ad
    • generated — already processed
    • error — error occurred during generation
  • Ad ID: The Meta Ad ID will be written here once the ad is successfully created.

Setup

  1. Copy this Google Sheet template and populate it with your data
  2. Create a Facebook App and retrieve the access credentials for the Facebook Graph API
  3. In n8n:
    • Connect your Google Sheets and Facebook Graph API accounts
    • Update the Edit Fields node with your actual ad account ID, page ID, campaign ID, pixel ID, and destination link
    • Deploy the workflow

This workflow runs every time the generate ad column in your sheet is updated.

How to customize this workflow to your needs

  • Modify the Edit Fields node to adjust ad set parameters like targeting, budget strategy, CTA type, and more
  • Expand interest-based targeting using more interest objects in the array
  • Add extra Google Sheet columns and map them to Facebook ad fields (e.g. different messages, URLs, creative assets)
  • Add logic to pause or duplicate ads based on performance

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 - Get image

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

Block 2 - Upload Ad image

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

Block 3 - Facebook Ad Creative

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

Block 4 - Create an Ad

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

Block 5 - Google Sheets Trigger

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

Block 6 - Create an Ad Set

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

Block 7 - Update Google Sheets

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

Block 8 - Specify variables

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

3. Summary Table

Workflow Automatically create Facebook ads from Google Sheets
Complexity intermediate
Nodes 8
Categories Social Media
Author Artur
Published 02 Apr 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/3406/3406.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 Automatically create Facebook ads from Google Sheets do?

Who is this for? This template is designed for Marketing Managers , Performance Marketers , and Ad Ops professionals who want to automate Facebook ad creation using structured data in Google Sheets...

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.