Intro to the AI newsletter ad tracking system
This resource is based on One form, one sheet, zero manual reporting, featuring James Goodwillie of Stack Influence, published on the AI Lab by ActiveCampaign.

Get the quick-start guide
The big idea
Instead of scattering ad performance data across email threads, shared drives, and analytics platforms, centralize everything through a single Google Form submission that auto-generates organized folders, tracking sheets, and performance reports. James Goodwillie built this system for Stack Influence, saving 5–10 hours per week, and it scales infinitely without requiring more time.
The System
Input: One Google form
Team member fills out a form with: send date, newsletter name, invoice number, cost, ad placement type, ad copy, creative file.
Automated pipeline (4 steps)
| Step | What happens | Tool |
|---|---|---|
| 1. Organize | Creates a labeled Drive folder with campaign doc + creative subfolder | Google Apps Script |
| 2. Centralize | Feeds all campaign details into a master tracking sheet | Google Apps Script |
| 3. Measure | Pulls UTM data (impressions, clicks, value) from Analytics the next day | Google Apps Script |
| 4. Score | Assigns lead quality values so you measure quality, not just volume | Custom form scoring |
Output: One tracking sheet
Columns A‑H (form data) + Columns I‑K (auto-pulled analytics) = complete campaign picture at a glance.
When to use this
- You run newsletter ad campaigns and need to track performance across multiple sends
- Your ad data is currently scattered across email threads, Drive folders, and analytics dashboards
- You want to compare ad creative and copy performance without manual data assembly
- You need to share campaign results with clients without exposing internal files
Common mistakes
- Tracking volume without quality → Add lead scoring to measure whether ads attract the right clients, not just the cheapest leads
- Building the system before defining what to track → Start with the Google Form fields; they determine everything downstream
- Skipping UTM parameters → Without consistent UTMs, the analytics connection has nothing to match
Quick-start
Create a Google Form with your key fields, generate an Apps Script with Gemini or ChatGPT to auto-create Drive folders and populate a tracking sheet on form submission, then add a daily script to pull Google Analytics data. Start with Steps 1–2 and add analytics + scoring later.
Ready for the full story?
Read One form, one sheet, zero manual reporting, featuring James Goodwillie of Stack Influence, published on the AI Lab by ActiveCampaign.
Related
More data from the AI Lab.