Meta Ads Automation for Emma Labs and Cashew

n8n · meta-ads · automation · marketing

The clients

Emma Labs, then a second configuration and deployment for Cashew, a London voice-marketing platform. Both wanted ads shipped without a person sitting in Ads Manager for every campaign.

What was built

A self-serve web tool. The user signs in, connects their Meta Business Manager through Facebook OAuth, and the app pulls their ad accounts, Pages, campaigns and ad sets from the Marketing API. A guided wizard covers account and Page selection, creative upload and ad details, with a review step before anything goes live. A non-technical user never opens Ads Manager.

n8n workflows that create the ads. The ad-creation call runs in an n8n workflow rather than in the app, so the write path can be changed, paused or extended without a front-end release.

Meta lets a user grant some permission scopes and decline others, and most integrations break when a scope is missing. Here each API call is mapped to the permission it requires, and the app records which scopes were actually granted. A missing scope disables the feature that needs it instead of failing mid-flow.

Stack

  • App: React, Vite, Tailwind
  • Identity and data: Facebook OAuth, Supabase (Auth, Postgres, Storage)
  • Ads: Meta Marketing API
  • Automation: n8n, as the ad-submission backend
  • Deployment: Netlify

Credentials

Our Apollo.io node is published on npm as n8n-nodes-apollo (MIT, maintainer arturl95, 14 resources, source public). We hold n8n Verified Creator status.


Want something like this built?

Tell us what the workflow needs to do and we will tell you whether it is a fit, what it would take, and what it would cost.

Start a conversation