Anu Agency
Playbook
Work with Anu
07.07 Send your numbers to one weekly sheet

07.07

Send your numbers to one weekly sheet

Know where each number comes from and feed leads and appointments into one Google Sheet automatically.

40 minNeeds verificationChecked 2026-10-20

Video walkthrough

Coming soonWhere your numbers come from, and how they reach one sheet
It will cover
  1. Every number has a home: CRM, calendar, ad platform, agreement
  2. HighLevel: a workflow that writes a row for each lead and each appointment
  3. Follow Up Boss: report exports with the same date range
  4. Copy spend from Meta Ads Manager once a week
  5. The sheet feeds the Part 08 scorecard
This chapter is complete without it. Every step is written out on this page.

What you're building

A simple data flow into one Google Sheet: a Leads tab that gets one row per new lead, an Appointments tab that gets one row per booking and status change, and a Weekly tab where you paste spend and signed clients. Part 08 turns that sheet into your scorecard.

Why it matters

Numbers pulled from five screens on a Monday morning rarely use the same dates or definitions. A sheet fed by the CRM as things happen keeps a record you can recount, filter by source, and compare week to week.

What you need

  • A Google account and a new Google Sheet with tabs named Leads, Appointments and Weekly
  • HighLevel workflows from earlier chapters, or Follow Up Boss reporting access
  • Access to Meta Ads Manager reporting

Time and cost

Time
40 minutes
Cost
$0 to low

HighLevel describes its Google Sheets action as a premium workflow action; premium executions may be billed depending on your agency plan. Check before switching it on.

Step by step

  1. Write down where each number comes from

    NumberHomeHow it reaches the sheet
    New leads by sourceCRMRow per lead (HighLevel action) or weekly export (Follow Up Boss Lead Sources report)
    Appointments booked and heldBooking calendar + status in CRMRow per status change (HighLevel) or Appointment report export (Follow Up Boss)
    SpendMeta Ads ManagerCopied weekly, same dates
    Signed clientsAgreement software, reflected in CRM stageCopied weekly from the CRM stage or pipeline
    RevenueYour closing statementsCopied when commission is received

    Check: Your Weekly tab has one column per number, each with its home written in the header note.

  2. HighLevel: add a Google Sheets row to the lead workflow

    Connect your Google account, choose the Drive, spreadsheet and the Leads worksheet, refresh the headers, and map columns: date created, first name, source, assigned user, SMS consent. One row is written each time the workflow runs.

    Do the same in a workflow with the Appointment Status trigger, writing to Appointments: date, contact, calendar, status.

    Check: A test submission adds one row to Leads within a minute; booking and marking the test appointment adds rows to Appointments.

  3. Follow Up Boss: export the same reports every week

    Set the time frame to last week (Monday to Sunday), lead type to the type you report on, and export to CSV. Repeat for Reporting > Appointments with the same dates. Paste the totals into the Weekly tab.

    Check: The lead count in your Weekly tab equals the Lead Sources report total for the same dates.

  4. Copy spend from Meta Ads Manager with the same dates

    In Ads Manager, set the date range to the same Monday to Sunday and read Amount spent per campaign. Paste it into the Weekly tab. Recent days can still change for up to 48 hours, so do this on Tuesday for the previous week or note that Monday's figure is an estimate.

    Check: Spend in the sheet matches Ads Manager for the same date range.

What success looks like

  • New leads and appointment changes appear in the sheet without anyone typing them (HighLevel) or from one weekly export (Follow Up Boss).
  • Every number in the Weekly tab uses the same Monday to Sunday dates.
  • Test leads are excluded by their test-lead tag or source.

Copyable templates

csvSheet headers (paste into row 1 of each tab)
Leads tab:
Date created,First name,Source,Assigned user,SMS consent,Tags

Appointments tab:
Date,Contact,Calendar,Status,Assigned user

Weekly tab:
Week starting,Spend,New leads,Qualified conversations,Appointments booked,Appointments held,Signed clients,Revenue

Try it

CRMleads, stages
Calendar statusbooked, showed, no-show
Meta Ads Manageramount spent
Agreementssigned clients
Google SheetLeads, Appointments, Weekly
ScorecardPart 08
  • CRMtoGoogle Sheetrow per lead
  • Calendar statustoGoogle Sheetrow per status
  • Meta Ads ManagertoGoogle Sheetweekly copy
  • AgreementstoGoogle Sheetweekly copy
  • Google SheettoScorecard
Data flow into the weekly sheet

How to test it

Submit, book, and mark one test lead as Showed. Confirm one row appears in Leads and two in Appointments (booked, then showed). Then filter the sheet to exclude test-lead and confirm your totals ignore it.

Troubleshooting

HighLevel: the row is written but columns are shifted or empty.

The sheet headers changed after mapping. Refresh headers in the action and remap the columns.

Duplicate rows for one lead.

Two workflows write to the same tab. Keep one writer per tab, or add a filter so only the first form submission writes a row.

Weekly totals in the sheet and the CRM disagree.

Check the date range (Monday to Sunday in both), the time zone of the CRM account, and whether test leads were excluded.

Advanced technical details

Optional. You can follow every step above without these.

Technical detailsAutomating the feed with webhooks

HighLevel's outbound Webhook action posts the contact and trigger data to a URL; the Custom Webhook action (premium) lets you set method, headers, authentication and a raw JSON body. Execution Logs confirm the action ran but do not show the payload, so inspect payloads with a request-capture tool during setup.

Follow Up Boss: register peopleCreated and appointmentsCreated webhooks (account owner only, up to two per event per system). Respond 2XX within 10 seconds; failed deliveries are retried. Each payload has a uri to GET for the record, so your receiver needs an API key. A small script (Google Apps Script web app, or a Zapier Catch Hook) can receive the event, fetch the record and append a row.

Zapier's Catch Hook trigger parses JSON, XML or form-encoded POST bodies; send a sample request before clicking Test trigger, because an empty request is ignored.

Sources

Written from the best available information. One or more steps could not be confirmed; see the notes in the chapter. Last checked 2026-10-20.