Quick overview
This workflow runs monthly and builds a multi-channel client performance report by pulling KPIs from Google Analytics 4, Google Ads, and Meta Ads, generating an OpenAI executive summary, converting a branded HTML report to PDF with PDFShift, uploading it to Google Drive, and emailing it via GoHighLevel (LeadConnector).
How it works
- Runs on a schedule at 9:00 AM on the 1st of every month.
- Loads a JSON client roster (IDs and email addresses), calculates the current vs previous reporting windows, and processes each client as a separate item.
- Fetches current/previous period website and channel KPIs from the Google Analytics Data API (GA4).
- Pulls campaign performance data from the Google Ads API for the date range and requests campaign insights from the Meta Graph API.
- Aggregates GA4, Google Ads, and Meta results into a single KPI model with period-over-period deltas and blended paid-media metrics.
- Sends the KPI model to OpenAI (gpt-4o-mini) to produce a JSON executive summary and recommendations.
- Builds a branded HTML report, converts it to a PDF using PDFShift, uploads it to Google Drive, and creates a shareable link.
- Upserts the client as a GoHighLevel contact and sends an email with the PDF link and PDF URL as an attachment.
Setup
- Add credentials for Google Analytics OAuth2 (GA4) and Google Drive OAuth2 (Drive upload/sharing).
- Add Google Ads OAuth2 credentials and set your Google Ads developer token and login customer ID (MCC) values used in the request headers.
- Provide a Meta access token for HTTP header authentication and confirm the Graph API version and ad account IDs you use.
- Add an OpenAI API credential (for the gpt-4o-mini summary) and a PDFShift API key for HTML-to-PDF conversion.
- Add your GoHighLevel (LeadConnector) Private Integration Token and set the GHL location ID and sender email used for delivery.
- Update the client list and required IDs/emails in the configuration, and set the target Google Drive folder ID where PDFs are stored.