Systems in practice
Automated Lead Follow-Up and Facility Reporting for a Self-Storage Operator
How we connected Facebook inquiries with WhatsApp and email follow-up, while bringing facility activity and advertising spend into a shared reporting workspace.
Self-storage / Lead response and facility reporting
- Make
- Facebook Lead Ads
- Storman
- Google Sheets
Business challenge
A multi-facility self-storage operator needed a consistent response to Facebook inquiries and a clearer view of facility activity alongside advertising spend.
Lead details arrived through Facebook, customer communications used WhatsApp and email, and operational information lived in Storman. The challenge was to connect follow-up and reporting without confusing message sending with customer engagement or advertising activity with verified sales attribution.
Solution overview
We implemented two separate Make workflows. The lead-response workflow records Facebook submissions in Google Sheets and branches into WhatsApp and email follow-up. The reporting workflow combines facility leads, move-ins, gross charge totals, occupancy-related fields, and advertising spend in reporting sheets.
Google Sheets provides a shared operational record, but the workflows have different responsibilities. The follow-up workflow handles individual inquiries; the reporting workflow prepares dated facility metrics and aggregate sales-versus-spend inputs.
How the system works
Inquiry follow-up / Facility and advertising reporting
Make / Workflow orchestration
1Individual lead response
Capture the inquiry first
Log the lead ID, date, contact fields, storage requirement, and ad-set context.
Facebook Lead Ads / Google Sheets
Branch by available contact method
Phone-present leads enter WhatsApp template sending; email-present leads receive an HTML email with downloaded image attachments.
WhatsApp / Outlook
Record independent sending flags
Update the original lead row separately for the WhatsApp and email sending steps.
Google Sheets
2Period-based reporting
Collect facility activity
Count leads and move-ins; aggregate gross charges and read occupied-unit fields for the reporting date.
Storman
Retrieve campaign spend
Collect Google campaign costs and Meta account spend for the same reporting date.
Google Ads / Meta Ads
Write detail and summary rows
Store facility measures beside spend, plus a combined charge-and-spend row for chart inputs.
Google Sheets
Workflow 1 — Capture and route the inquiryA Facebook Lead Ads trigger supplies the submission. The workflow first logs the lead identifier, creation date, contact information, storage requirement, and ad-set context in Google Sheets.
WhatsApp follow-upA phone-present gate controls the messaging branch. The workflow parses the phone number and sends a configured template through the WhatsApp Business Platform Graph API. A bounded retry handler is attached to this request. After the send step, the original sheet row is updated with its WhatsApp sending flag.
Email follow-upAn email-present gate controls a separate branch. The workflow downloads configured unit photographs, aggregates them as attachments, and sends an HTML message through Microsoft 365 Outlook. The template uses the lead's first name and includes facility information, pricing, and booking links. A separate sending flag is written to the same lead row.
Workflow 2 — Facility reportingThe reporting workflow defines a previous-day date and retrieves Storman data for two facilities. It filters lead records by creation date, requests unit history for the move-in period, sums facility-filtered gross charge totals, and reads activity extracts for occupied-unit fields.
Advertising and report outputsGoogle Ads campaign costs and Meta ad-account spend are collected for the reporting date. The workflow writes a detailed row containing facility measures and advertising spend, plus a summary row with combined charge totals and spend for charting. These report outputs are separate from the individual lead-response record.
Engineering decisions
- Record the inquiry before sending messagesThe initial sheet insertion retains the lead identifier and returns the row number used by both follow-up branches.
- Gate each communication channel independentlyPhone and email availability determine which sends are eligible. The branches do not require both contact methods to be present.
- Keep sending flags separateWhatsApp and email write to different columns. These flags record workflow progress, not proof of message delivery, replies, or conversion.
- Use source-specific reporting rulesLead dates are filtered in the workflow, while move-in and charge requests carry period parameters. Gross charge totals and occupied-unit fields remain distinct operational measures.
- Use targeted error handlingThe export includes retries for WhatsApp and ad-report requests. It does not establish end-to-end deduplication, replay safety, or cross-channel delivery guarantees.
- Avoid unsupported attributionFacility results and campaign spend are presented together, but the workflows do not prove which individual advertisement produced a move-in.
Results & business impact
The delivered workflows turn incoming Facebook inquiries into a shared lead record and separate WhatsApp and email follow-up paths, gated by the available contact information. Independent sending flags make workflow progress visible without implying confirmed message delivery or customer engagement.
Facility leads, move-ins, occupied-unit fields, and gross charges are brought together with advertising spend in Google Sheets. This consolidates reporting inputs that would otherwise need to be gathered separately. Gross charges remain distinct from recognized revenue, and campaign spend does not establish which inquiry became a move-in.
Consistent lead follow-up
Incoming Facebook inquiries are logged before eligible contacts enter separate WhatsApp and email branches.
Outreach visibility
Separate sheet flags record progress through each sending step, not delivery receipts, replies, or engagement.
Consolidated facility reporting
Facility activity and gross-charge measures sit alongside advertising spend in dated detail and summary rows.
Less manual reporting work
Connected workflows collect operational and advertising inputs into a shared reporting workspace instead of requiring separate manual collection.
Technology stack
- Make
- Orchestrates lead capture, channel routing, attachments, reporting aggregation, sheet updates, and configured retries.
- Facebook Lead Ads
- Provides submitted inquiry and ad-set information.
- WhatsApp Business Platform
- Receives template-message requests through the Graph API.
- Microsoft 365 Outlook
- Sends the HTML follow-up and downloaded image attachments.
- Storman
- Supplies facility lead records, move-in history, gross charge totals, and activity extracts.
- Meta Ads and Google Ads
- Supply advertising spend for the reporting period.
- Google Sheets
- Holds the inquiry log, sending flags, detailed facility reporting, and summary chart inputs.
- HTTP APIs
- Connect messaging, image retrieval, and facility reporting endpoints.