I used to run Bonsai on Google Sheets. Client data, project tracking, timesheets, reporting templates. Everything was a spreadsheet.

Over the past two years, I've rebuilt the entire stack around APIs, agents, and data automation.

Here's what I use and why.

Core Infrastructure

Airtable: $100/month

This is the database. Every piece of information lives here:

  • Client info (name, niche, contact, contract value)
  • Content calendar (what we're publishing, when, for which client)
  • Keyword targets (keywords we're ranking for per client)
  • Backlink tracking (new links, their DA, which client)
  • Project status (tasks, deadlines, who's assigned, blockers)
  • Airtable replaced Google Sheets because it has an API. That means agents can query it, update it, and append data without human involvement.

    Example: A script runs every morning, pulls backlink data from SEMrush API, and appends new backlinks to our Airtable. Before: I'd manually export from SEMrush every week and update Airtable. Now: automated.

    Agent Infrastructure

    Claude API: $30-50/month

    This is the brain. Claude is what does the thinking and analysis. It's the core of all three agents.

    Google Cloud: $30-40/month

    This is where I host cronjobs that trigger the agents. Every morning at 6 AM, a Cloud Function wakes up the agents.

    Zapier: $60/month

    This is the glue that connects tools that don't have direct API access. Client asks a question in email → Zapier forwards to Claude → Claude answers → Zapier sends email back.

    Not necessary if you're comfortable with code, but it's good for non-technical workflows.

    Data Sources

    DataForSEO API: $180/month

    Keyword research, SERP data, site audits, backlink analysis. This is the most expensive tool but irreplaceable.

    Google Search Console API: Free

    Impressions, clicks, positions. Pulls directly into Airtable via a custom script.

    Google Analytics 4 API: Free

    Sessions, users, conversions. Also pulls into Airtable.

    SEMrush API: $312/month (for the plan that includes API access)

    Competitor analysis, backlink data, keyword gaps. Used both by me and by agents.

    Communication & Client Interface

    Gmail: $20/month (business)

    Email for client communication. Configured to integrate with Zapier for some automation.

    Slack: $0 (free tier sufficient)

    Internal team communication. Agents post updates here (rankings up, new backlinks, client questions).

    Notion: $60/month

    Client-facing documentation. Clients log in and see their dashboards. Updated by agents.

    Reporting & Publishing

    Google Slides API: Free

    Agents generate decks here. I review and publish.

    WordPress REST API: Free

    When we publish content, agents push to WordPress directly. No manual upload.

    Cloudflare Pages: $20/month

    Where I host static sites (Astro builds). Agents can trigger rebuilds via API.

    Internal Tools I Built

    Event Pipeline (5 webhooks): Custom, no recurring cost

    When a client publishes content, a webhook fires. That webhook triggers a cascade of events:

  • Updates Airtable (content published)
  • Triggers social media scheduling (Zapier)
  • Kicks off agent to check if it ranked
  • Sends confirmation to Slack
  • This was maybe 4 hours to set up. Saves about 3 hours per week in manual work.

    Keyword Clustering Script: Custom, no recurring cost

    Takes raw keyword data and groups by semantic similarity. Then agents can make recommendations based on clusters.

    Written in Python. Runs twice a month. Feeds into Airtable.

    The bill

    Total monthly: $662-712 depending on variable usage

    Breaking down by category:

  • Agent/API infrastructure: $150/month
  • Data sources: $532/month
  • Communication/client interface: $80/month
  • Internal tools: $0 (built once, runs free)
  • That covers 3 clients at $34K/month revenue.

    Cost per client: ~$220/month in tools.

    For comparison: I'd need at least one full-time data analyst to do manually what this stack does. That's $4,000-5,000/month in salary.

    What's missing

    I don't have:

  • A CRM (Salesforce, HubSpot) — Not needed at 3 clients. Airtable is enough.
  • Project management software (Asana, Monday) — We use Slack + Airtable. Good enough.
  • A custom dashboard — Notion is fine. If we scale to 10+ clients, I'd build a real dashboard.
  • A billing system — I invoice via Wave Accounting (free tier).
  • These could be added if we scaled, but they're not necessary at our current size.

    The philosophy

    Every tool is either: 1. Data source (pulls information from the internet) 2. Data sink (stores information) 3. Agent (processes and acts on information) 4. Communication (tells humans what happened)

    If a tool doesn't fit one of those categories, I don't use it.

    Spreadsheets don't have APIs. They're data sinks only. So I replaced them with Airtable.

    Traditional project management software tries to be everything (data sink + communication + some analysis). I broke it into pieces that each do one thing well.

    Scaling considerations

    If we go to 10 clients, I'd add:

  • A real database (Postgres) instead of Airtable ($40/month)
  • A custom dashboard built in React/Next.js (one-time build, $0 ongoing)
  • More Claude API budget (probably 2-3x current)
  • Total cost would go from $700/month to maybe $1,500-2,000/month.

    Revenue would be $100K+/month. Still extremely profitable.

    The takeaway

    You don't need an expensive, bloated stack to run an agency. You need:

  • One data source (Airtable, Postgres, whatever)
  • APIs for your data sources (GSC, Analytics, competitor data)
  • An AI model to process data (Claude)
  • A way to schedule jobs (Cloud Functions, cron, Zapier)
  • Communication tools (email, Slack)
  • That's it. Everything else is cosmetic.

    This setup scales to $200K+/month in revenue with essentially no added infrastructure cost. The limiting factor is my ability to manage client relationships, not my tools.

    That's the real win.