IP-01
Standard Operating Procedure · Front Office
Lead Intake &
Appointment Scheduling
Front Office Owner: OM HubSpot · Shared Calendar
1Purpose

This SOP exists to eliminate lead leakage and response delay. Inbound leads decay by the minute — any delay directly reduces close rate, increases marketing cost, and creates downstream chaos disguised as "sales problems."

This SOP enforces: speed-to-lead, data integrity, clear ownership, and zero ambiguous states.

2Scope — When This Applies

This SOP applies to ALL inbound residential leads, including:

  • Phone calls
  • Website forms
  • Referrals
  • Social media messages (FB, IG, etc.)
  • Walk-ins and event leads

If the company did not already have an active deal with this person, this SOP applies. No exceptions, no batching, no "I'll do it later."

3Definitions
Lead
Inbound inquiry with no appointment scheduled.
Contact Attempt
Phone call OR text OR email logged in HubSpot.
Appointment
Confirmed date/time on shared calendar with assigned Rep.
Speed-to-Lead Clock
Starts at timestamp of inbound inquiry.
4Entry Criteria

This SOP begins when ANY of the following occur:

  • Phone rings
  • Form submission received
  • Referral received
  • Message received (FB, IG, or any channel)
5Mandatory Execution — Order Matters
1
Create or Update Contact
OM ≤ 3 minutes
System: HubSpot
  • Search HubSpot for existing contact
  • If found → update record. If not found → create new contact.
  • Required fields: First Name, Last Name (or "Unknown"), Phone OR Email, City/Market, Lead Source, Generated By, Project Description (raw, unfiltered)
❌ If required fields are missing → STOP and obtain them before proceeding.
2
Set Initial CRM State
OM Immediate
System: HubSpot
  • Lifecycle Stage: Lead
  • Lead Status: New
  • Contact Owner: Office Manager (temporary)
If the lifecycle stage is wrong, reporting is garbage. This is not optional.
3
First Contact Attempt
OM ≤ 5 minutes
  • Phone call (preferred) → Text → Email (secondary only)
  • Attempt must be logged in HubSpot
  • Leave voicemail if unanswered
  • Text must identify company + purpose
❌ "I was busy" is not an excuse. ❌ "I'll call later" is how money dies.
4
Determine Next State
OM
If Contact Reached
  • Qualify at high level (project type, location, urgency)
  • Schedule appointment during the same interaction
If Contact NOT Reached — Follow-Up Cadence
  • Attempt #2: +1 hour
  • Attempt #3: +4 hours
  • Daily attempts thereafter until dispositioned
5
Schedule Appointment
OM
System: Shared Calendar + HubSpot
  • Appointment must include: Date & time, Assigned Sales Rep, Address or meeting method, Notes / special instructions
  • Assign Contact Owner to Sales Rep
  • Update Lifecycle Stage → Marketing Qualified Lead
  • For emergency appointments: same-day or next-day; Rep must be verbally notified
6
Send Appointment Confirmation
OM Same Day
  • Use approved template only
  • Confirmation must include: Date & time, Rep name, What homeowner should prepare, Company contact info
No confirmation = no appointment. Period.
6Exit Gate — All Must Be True

This SOP is NOT complete until ALL items below are verified:

  • Contact exists in HubSpot with required fields
  • At least one contact attempt logged
  • Appointment scheduled OR follow-up task created
  • Lifecycle Stage correctly set
  • Contact Owner assigned
If any item is missing → SOP failed.
7Exceptions & Edge Cases
SituationAction Required
Unqualified LeadMark Lifecycle Stage = Lead, create task with next attempt date. Do NOT delete or ignore.
Not Interested / DisqualifiedMark Lifecycle Stage = Lead, set Lead Status = Disqualified, add reason note.
Duplicate ContactsMerge immediately. Preserve activity history.
8Quality Control & Audit

Auditor: Operations Manager / Owner  ·  Frequency: Weekly

Were leads contacted within 5 minutes?
Are lifecycle stages accurate?
Are there leads with no future task?
Are appointments confirmed with all required fields?
Any recurring failure = process breach, not a people problem.