Duck
Automation5 min read

AI workflow automation for agencies

Samet Turan— Editor··5 min read

Build a reliable AI workflow automation for agencies with no-code tools, real prompts, and debugging tips—step-by-step guide that works for client reporting in 2026.

Last month I needed to pull performance numbers from three ad platforms, rewrite the copy for each client, and send a PDF summary before 9 a.m. The manual process ate half my day and left room for mistakes.

After reading this, you’ll be able to stitch together a no‑code AI workflow that fetches data, generates copy, and emails the report—all while you sleep.

What the workflow actually does

The workflow pulls the latest spend and click‑through rates from Facebook Ads, Google Ads, and LinkedIn Campaign Manager each night. It then feeds those numbers into a GPT‑4 prompt that writes a fresh ad‑copy variation for every active campaign. Finally, it renders a one‑page PDF with tables and the new copy, and emails it to the client’s inbox.

Think of it as a night‑shift analyst that never complains about overtime.

Fetching ad data without code

I use Apify because it lets you run pre‑built actors via a simple webhook. The Facebook Ads actor returns a JSON array with spend, impressions, and CTR for each ad set. The Google Ads actor does the same for campaigns. Both actors run on a schedule you set in Apify’s dashboard.

Here’s the exact setup I use:

  1. In Apify, create a new task and add the “Facebook Ads Scraper” actor.
  2. Set the input to your ad account ID and a date range of “last 24 h”.
  3. Enable the “Run via webhook” option and copy the generated URL.
  4. Repeat for the Google Ads actor.
  5. In Make.com (formerly Integromat), create a scenario that starts with a Webhook trigger pointing to each Apify URL.
  6. Map the JSON output to a data store so the next step can read it.

The free tier of Apify gives you 10 000 compute‑seconds per month, which is enough for a solo agency running two actors nightly. I think the free tier is enough for solo work.

My gripe? The actor logs truncate after 100 lines, so when something goes wrong you only see the tail end. It’s frustrating when you need to see the full request payload.

What I love is the one‑click “Deploy” button that pushes the actor to Apify’s servers—no Docker files, no CLI.

Generating copy with AI

Once the data lands in Make.com, I route it to a GPT‑4 module. The prompt I use is:

You are an expert ad copywriter. Given the following performance metrics for a campaign:
- Spend: {{spend}}
- Impressions: {{impressions}}
- CTR: {{ctr}}
Write three headline options and two description lines that would likely improve CTR by at least 15%. Keep each headline under 30 characters and each description under 90 characters.

I store the output in three separate variables: headline_a, headline_b, headline_c, desc_one, desc_two.

The cost? Make.com’s core plan is $29/mo, which I find fair for the automation it enables. The GPT‑4 API costs about $0.03 per 1 000 tokens; my nightly run uses roughly 800 tokens, so under $0.03 per day.

Assembling the PDF and sending email

For the PDF I rely on PDFMonkey. It lets you design a template with a drag‑and‑drop editor, then fill it via a simple JSON payload. I built a template that has a table for the metrics and a placeholder block for the copy.

In Make.com, after the GPT‑4 step I add a “HTTP > Make a request” module to PDFMonkey’s API:

  • Method: POST
  • URL: https://api.pdfmonkey.ai/document
  • Headers: Authorization: Bearer {{pdfmonkey_key}}
  • Body: { “document”: { “template_id”: “tmpl_123abc”, “data”: { “metrics”: {{metrics_json}}, “headline_a”: “{{headline_a}}”, “headline_b”: “{{headline_b}}”, “headline_c”: “{{headline_c}}”, “desc_one”: “{{desc_one}}”, “desc_two”: “{{desc_two}}” } } }

PDFMonkey returns a download URL; I then use the Gmail module to attach that file and send it to the client.

PDFMonkey’s paid plan starts at $29/mo for 500 documents, which is plenty for a small agency. I think $29/mo is fair for the time it saves.

My love here is the live preview in PDFMonkey’s editor—you can see exactly how the data will look before you hit “Generate”.

What most guides get wrong

Many tutorials tell you to chain everything in a single Zapier automations zap. That works until you hit the 100‑task limit on the free plan, and then your workflow stops mid‑night with no warning. The result is missing reports and angry clients.

Instead, split the work: use Apify for data extraction, Make.com for orchestration and AI, and PDFMonkey for document generation. Each tool has its own free tier that comfortably handles the volume for a solo operator.

How to debug when this breaks

First, check the Apify run logs. If the actor failed, the error message will appear in the “Log” tab—look for authentication errors or rate‑limit notices.

If Apify succeeded but Make.com didn’t receive data, verify the webhook URL is still active; Apify sometimes regenerates it after a task edit.

When the GPT‑4 step returns empty output, inspect the prompt variables. A missing metric (e.g., {{ctr}} empty) will cause the model to return a fallback message.

Finally, if PDFMonkey returns a 401, double‑check that the bearer token hasn’t expired; tokens rotate every 30 days.

Keep a simple Google Sheet that logs each run’s status (success/fail) and the timestamp—this makes spotting patterns trivial.

How do you handle API rate limits when scraping ad data?

Both Facebook and Google enforce hourly limits on their ad APIs. Apify’s actors already respect those limits, but if you run multiple accounts you can still get throttled.

My workaround is to stagger the webhook triggers: schedule the Facebook actor at 02:00 UTC and the Google actor at 02:30 UTC. That 30‑minute gap keeps each platform under its per‑hour ceiling.

If you need to scale beyond that, add a “Delay” module in Make.com between the two calls, set to 1800 seconds. It’s a crude but effective buffer.

One‑sentence paragraph: It just works.

For more on this exact angle, deeper coverage of AI agent platforms.

If you’d rather skip the build and deploy a working version in an afternoon, we’ve packaged this workflow as a blueprint at deepusecase.com/vault/packages/agency.

— The Colophon

One AI tool. Tested. Reviewed.
In your inbox every Sunday.

~3 minute read. Real outcomes from operators, not marketers.

Free. One email per Sunday. Unsubscribe in one click.