Standard Modular Snapshot — Report & Build Plan

A best-practice comparison across all 35 client sub-accounts versus the current "Z Automation Snapshot," and a plan to turn it into one standard baseline you load for every client, then toggle modules on/off per need.

Source: full-fleet sweep (45 sub-accounts) + Z Automation Snapshot inventory. Prepared for the Patrick standard-snapshot initiative.

Bottom line

The Z Automation Snapshot is already ~80% the right baseline. It already contains the exact 5 workflows proven across the fleet (published), plus 8 more sitting as drafts — which is almost exactly the "core + toggle" structure we want. It needs cleanup and a clear core/modular split, not a rebuild.
35
Client accounts compared
5
Proven core workflows
7
Modular toggle workflows
~25
Cruft fields to strip

1. The report — what is actually working

"Working" = published (live, running) across the fleet. These five run in 70–94% of all client accounts. They are the universal core.

WorkflowCoverageIn Z snapshot?
All Leads Captured → Tag Sources → GA4 Events94%
Yes · published
Forms: Any Form Submitted → Create Opportunity → Auto Response94%
Yes · published
Mark All As Read91%
Yes · published
Review Requests86%
Yes · published
Forms: Any Form Submitted → GA4 → Add Tags → Send Notification71%
Yes · published

Supporting layer (also near-universal)

AssetWhat's standardCoverageIn Z?
PipelinesMain + Fixed (two-pipeline standard)27 / 14 of 35Yes
Custom valuesGA4 Measurement ID, GA4 API Secret (per-client config knobs)34 of 35Yes
Custom fieldsService Requested, Referred By, Referrer Email26–29 of 35Yes
Calendar"Discovery Call with {{location.name}}"17 of 35Yes
Trigger link / tagsGoogle Review Link + review-sequence / traffic-source / lost-reason tag taxonomycommonYes
Every one of these is already present in the Z snapshot. The baseline is sound — the work is standardizing and de-cluttering it.

Reference accounts (most mature — copy polished configs from here)

Ranked by published workflow count (battle-tested, actually in use):

AccountPublishedTotal wfUse for
Acclaimed Roofing Arizona2938Gold reference — pull exact step config of the core 5 from here
Alfred's Roofing2258Cross-check nurture + reminder modules
Empire Roofing1924Clean published-to-total ratio; pipeline reference
Reliable Roofing, Siding & Windows1622Review + notification config

2. The target — Standard Modular Snapshot

One snapshot. A core that's always on, a set of modules shipped as drafts you flip on per client, and the cruft removed.

CORE Always on · published by default
  • Workflows: GA4 Events tagging · Form → Opportunity → Auto Response · Form → GA4 → Tags → Notify · Mark All As Read · Review Requests
  • Pipelines: Main · Fixed
  • Custom values (config knobs): GA4 Measurement ID · GA4 API Secret
  • Custom fields: Service Requested · Referred By · Referrer Email (+ standard opportunity/contact fields)
  • Calendar: Discovery Call with {{location.name}}
  • Tags: review-sequence + traffic-source + lost-reason taxonomy · Trigger link: Google Review Link · Forms: Contact Us, Referrals
MODULAR Ship as draft · toggle on per client
  • Appointment Reminders (confirmation + no-show rebooking) — for any client that books calls/appointments
  • Inbound nurtures (Day 1–3, 5-Week) — longer sales cycles
  • Incoming Call → Tag — clients taking inbound phone calls
  • Facebook Lead Form / Messenger Tag + Lead Engagement → Meta Conversion API — clients running Meta lead ads
  • Review Request "with intent check" — advanced variant (swap in for basic Review Requests)
  • Google Review Campaign – Past Clients — bulk reactivation of an existing customer list
STRIP Remove from the standard
  • LinkedIn / ICP "ScoreCard" custom fields + ScoreCard form (~20 fields like "Does your LinkedIn profile…", "Radio 1mxi", "Score 1lzz") — leftover from a B2B LinkedIn use case, irrelevant to FireRock's home-services book
  • Duplicate fields: Website ×2, State ×2, City ×2, Email ×3, Phone ×2
  • "Lead Engagement" pipeline — only exists in Z; the fleet standardized on Main + Fixed. Drop (or demote to a module)

3. Build plan

  1. Clone Z to a working copy

    Duplicate "Z Automation Snapshot" into a fresh sub-account named FireRock Standard v1. Build there so the live Z stays untouched until v1 is validated.

  2. Strip the cruft

    Delete the ScoreCard fields + ScoreCard form, the duplicate fields, and the Lead Engagement pipeline. Result: a clean field list (Service Requested, Referred By, Referrer Email + standard opportunity/contact fields only).

  3. Lock the CORE and publish it

    Confirm the 5 core workflows are present and published; verify each step config against Acclaimed Roofing Arizona (the most mature account). Keep Main + Fixed pipelines, GA4 custom values (left blank as placeholders), Discovery Call calendar, tag taxonomy, Google Review link, Contact Us + Referrals forms.

  4. Stage the MODULES as drafts with a clear naming convention

    Prefix every optional workflow with [OPT] and group them in an "Optional Modules" folder, so on/off is obvious at a glance. Core workflows go in a "Core" folder. This is what makes "turn on what we need" a 10-second job.

  5. Write the per-client activation runbook

    The toggle checklist below — by client capability, not niche.

  6. Save as the agency snapshot & smoke-test

    Save FireRock Standard v1 as an agency snapshot. Spin up a throwaway sub-account from it, confirm core fires on a test form submit (one verified send), then retire the old snapshot.

  7. Roll into onboarding

    New client = load snapshot → fill the config knobs (GA4 IDs, calendar owner, business phone) → toggle the modules they need → publish. Done.

Per-client activation runbook (toggle on when…)

ModuleTurn ON when the client…Default
Appointment Remindersbooks calls / appointments via the calendarusually ON
Incoming Call → Tagtakes inbound phone calls (most home-services)usually ON
Inbound nurtures (Day 1–3, 5-Week)has a longer sales cycle / quote-then-decide flowsituational
Facebook Lead Form + Meta Conversion APIruns Meta (Facebook/Instagram) lead adssituational
Review Request "with intent check"wants smarter review timing (replaces basic Review Requests)optional
Google Review Campaign – Past Clientshas an existing customer list to reactivate for reviewson request

Config knobs to set per client (custom values)

GA4 Measurement ID · GA4 API Secret · business phone (if FB module on) · calendar owner/availability · business name/address. These are the only per-client variables — everything else is inherited from the snapshot.

4. Canonical spec — names, tags, folders

This is the single source of truth. Build the master exactly to these names so every account is identical and drift is instantly visible in the audit sweep.

4.1 Naming conventions

ObjectConventionExample
Core workflowPlain descriptive name, lives in a numbered Core folder. No prefix.Review Requests
Optional workflowPrefix [OPT] + descriptive name, in an Optional folder. The prefix makes on/off obvious at a glance.[OPT] Appointment Reminders — Confirmation
FoldersNN · Layer — Group (zero-padded number sets order; "Core" vs "Optional" sets the layer)01 · Core — Lead Capture
Source tagslowercase plain wordswebsite form, paid social
Sequence tags (system)lowercase, no spaces, numbered. System-managed — never hand-edit.emailreviewrequest1
Category tagscategory:value colon-namespacedlost:cost, lost:timing
Custom valuesUPPER for IDs/secrets, Title Case for the restGA4 MEASUREMENT ID
Snapshot versionFireRock Standard vN — bump on any change, log itFireRock Standard v1

4.2 Workflow folders & canonical names

📁 01 · Core — Lead Capture
   ├─ All Leads Captured → Tag Sources → GA4 Events        [published]
   ├─ Forms: Any Form Submitted → Create Opportunity → Auto Response   [published]
   └─ Forms: Any Form Submitted → GA4 → Add Tags → Send Notification   [published]
📁 02 · Core — Reviews
   └─ Review Requests                                       [published]
📁 03 · Core — Utility
   └─ Mark All As Read                                      [published]
📁 04 · Optional — Appointments
   ├─ [OPT] Appointment Reminders — Confirmation            [draft]
   └─ [OPT] Appointment Reminders — No-Show Rebooking       [draft]
📁 05 · Optional — Nurture
   ├─ [OPT] Inbound Nurture — Day 1–3                       [draft]
   └─ [OPT] Inbound Nurture — 5-Week                        [draft]
📁 06 · Optional — Calls
   └─ [OPT] Incoming Call → Tag                             [draft]
📁 07 · Optional — Ads & Tracking
   ├─ [OPT] Add Facebook Messenger Tag                      [draft]
   ├─ [OPT] Facebook Lead Form Submitted                    [to add]
   └─ [OPT] Lead Engagement — Meta Conversion API           [to add]
📁 08 · Optional — Reviews+
   ├─ [OPT] Review Request — With Intent Check              [draft]
   └─ [OPT] Google Review Campaign — Past Clients           [draft]
Rule: Core folders publish on load. Optional folders stay draft until the activation runbook (§3) says turn it on. Nothing outside these folders ships in the standard.

4.3 Canonical tag taxonomy

Evidence-based: every tag below is already on 34/35 client accounts unless noted. Group, don't free-form.

GroupTagsOwner
Source / trafficdirect traffic · organic traffic · paid search · paid social · social media · website form · website referral · facebook form · facebook messenger · referral leadSet by Lead-Capture workflows
Review sequenceemailreviewrequest1 · emailreviewrequest2 · emailreviewrequest3 · emailreviewtried1 · emailreviewtried2 · smsreviewtried1 · smsreviewtried2 · smsreviewtried3 · review requestSystem — never hand-edit
Lost reasonlost:cost · lost:timing (extend lost:* as needed)Set on Closed Lost
State / opsafter hours · spamRouting workflows

4.4 Canonical pipelines & stages

PipelineStages (in order)Use
MainNew Lead (single intake stage; clients may extend, but the standard ships one)Raw intake / triage
FixedDay 1-3** › Meeting Scheduled** › Missed Meeting/Reschedule** › Negotiation › Pending › Closed Won › Closed Lost › 5 Week Lead Nurture** › No ResponseSales process (canonical 9-stage)
** marks stages that trigger automation (Day 1-3, Meeting Scheduled, Missed Meeting/Reschedule, 5 Week Lead Nurture). Keep the marker in the stage name — the nurture & reminder modules key off these stages. Drop the old "Lead Engagement" pipeline; it is not part of the standard.

4.5 Canonical custom fields & values

TypeItemsFolder
Custom fields (intake)Service Requested · Referred By · Referrer Email📁 Lead Intake
Custom fields (standard)opportunity + contact defaults (name, email, phone, address, pipeline, stage, status, lead value, source, lost reason)📁 Standard
Custom values (config knobs)GA4 MEASUREMENT ID · GA4 API Secret · Facebook Phone Number (FB module only)

4.6 How we sync it canonically

  1. One source of truth

    The FireRock Standard vN agency snapshot is canonical. Every new account is created from it, so names, folders, tags, pipelines and fields are identical on day one.

  2. Names are the contract

    Because every object name + folder is fixed, the audit sweep can diff each live account against this spec and flag any drift (renamed workflow, stray tag, missing core folder) automatically.

  3. Versioned changes

    Any improvement is made in the master, the version bumps (v1 → v1.1), and the change is logged. We re-push only the changed objects to existing accounts; client-specific edits live outside the Core folders so they are never overwritten.

  4. Quarterly reconciliation

    Re-run the fleet sweep, diff against this canonical spec, and bring stragglers back in line. The audit dashboard is the scoreboard.