← Back to Outreach HQ
Outreach HQ Guide
A complete reference for every feature on the Outreach HQ dashboard. Designed for agents picking up the tool for the first time, and as a reminder of less-frequently-used capabilities.
1. Overview
Outreach HQ is a unified agent workstation for managing every inbound and outbound communication with a contact across phone, SMS, and email — all from a single screen. It is the layer in front of Suzanne: your job is to triage inbound calls and SMS, qualify or disqualify at the top of the funnel, and either book the contact with Suzanne or dispose of them cleanly.
The dashboard is real-time. Queue counts update the moment a new SMS lands, calls ring directly in the browser, new voicemails toast onto the softphone widget, and AI briefings precompute the moment you select a contact. The left side is the queue (who to contact next). The right side is the detail panel (everything about the selected contact). The bottom-right corner holds the softphone widget (your Recents, Keypad, and Voicemail tabs).
OUTREACH HQ
Dashboard title. The ? button next to it opens this guide in a new tab.
AGENT NAME
Shows who is currently logged in (top-right). Your heartbeat + presence are tied to this identity.
INBOUND TOGGLE
Switch labeled "INBOUND". When ON, incoming calls to your Twilio numbers ring in your browser (with ringtone, caller context overlay, and answer/decline). When OFF, the Retell AI voice agent handles them instead. Toggle state is stored server-side and shared across all agents — flipping it affects the whole team.
VOICE STATUS
A colored dot + short label next to the agent name. Four states:
Ready Voice is connected; you can make and receive calls.
Connecting… Twilio Device is registering. First connect on load.
Reconnecting… Lost connection mid-session; auto-retry in progress (up to ~30s between attempts).
Voice offline Auto-retries exhausted. A [RETRY VOICE] button appears — click it to fetch a fresh Twilio token and rebuild the connection.
The system also auto-reconnects whenever the network comes back online, and runs a self-check every 10 seconds to detect silent Twilio desyncs. Inbound calls are only routed to your browser when voice is
Ready — otherwise callers go straight to voicemail instead of ringing a dead client.
3. Queue Tabs
Three main tabs at the top of the queue organize contacts by what's required. Each tab shows a live count. Click to switch the queue view.
RESPOND
Contacts who need an answer from you, now. Includes: SMS replies waiting, email replies waiting, short inbound callbacks (<15s — likely people who called back but hung up before the AI could help), and unconfirmed appointments within the next 48 hours. Sorted by wait time — whoever has been waiting longest appears first.
OUTREACH
Proactive dial list. Includes: qualified leads, people who hung up during an outbound AI call (3–30s), properties auctioning within 7 days, high-equity properties, contacts who texted back but went silent for 3+ days, and missed/no-show appointments. Sorted by priority rating (stars). Past-auction contacts are automatically hidden — you will only see contacts whose auction is today or in the future.
REMOVAL REQ
Contacts flagged for review — the AI detected removal-related language (“stop calling”, “remove me”, “do not contact”) in recent transcripts. Review, then either suppress the person/property or dismiss.
4. Sub-Chips (Filters Within Tabs)
Below each main tab, a row of smaller filter chips lets you drill into a specific subset of that tab. Click a chip to filter; click it again to clear. Each chip shows its own count.
RESPOND tab chips:
SMS REPLY
Inbound SMS waiting for your response. Sorted by wait time.
EMAIL REPLY
Inbound email waiting for your response.
CALLBACK
Short inbound calls (<15s) — usually people who called but hung up before anyone picked up. They need a human callback.
UNCONFIRMED
Appointments within 48 hours that haven't been re-confirmed by the contact. Reach out to confirm.
OUTREACH tab chips:
QUALIFIED
Contacts marked qualified by the qualification system. Warm — prioritize these.
HUNG UP
AI outbound calls where the contact answered then hung up within 3–30s. Worth a human callback or a softer SMS.
AUCTION 7D
Contacts whose property auction is within the next 7 days. Time-critical.
HIGH EQUITY
Judgment or opening bid is less than 50% of property value, and value is at least $75,000. High equity = high potential.
GONE DARK
Previously replied via SMS but silent for 3+ days. They engaged once — worth a nudge.
NO-SHOW
Missed, cancelled, or no-showed a scheduled appointment. Rebook or follow up.
5. Queue List
Each card in the left pane is a contact. The layout is intentionally minimal — only the signals that drive the decision to contact:
- Sentiment dot — A small colored dot before the name: green (positive), orange (negative), red (hostile). Absent means no sentiment data.
- Name — Full name, properly formatted even for multi-owner and "Last, First" source data.
- Star rating — 1–5 stars from the priority score (see section 6). Click the stars for a scoring breakdown popover.
- Wait time or days-to-auction — Top-right corner. Turns red when urgent.
- Priority heat bar — A thin vertical strip on the left edge of work-queue items: red (priority >35), amber (>20), cyan otherwise.
- Phone + address + preview — Phone in cyan, property + city, last-message preview in italics.
- Badges — At most three: HOSTILE / NEGATIVE sentiment (only when applicable), role (OWNER / RELATIVE / DECEASED / LLC — with ☠ appended for relative-of-deceased), and auction type (FORECLOSURE / TAXDEED).
Search: The search bar above the queue filters by name, address, phone, case number, city, or county. Filtering is live (200ms debounce) and case-insensitive.
6. Priority Rating (1–5 Stars)
Every contact in the Outreach queue gets a numeric priority score. That score maps to a 1–5 star rating used for sorting. Click the stars on any card to see the exact scoring breakdown.
Score-to-Star Mapping:
| Score Range | Rating | What It Means |
| 0 – 2 | ★☆☆☆☆ | Low priority — no urgency, minimal engagement, or negatives outweigh positives |
| 3 – 5 | ★★☆☆☆ | Some interest — one or two positive signals (e.g., owner role + upcoming auction) |
| 6 – 8 | ★★★☆☆ | Moderate priority — multiple engagement or urgency signals |
| 9 – 11 | ★★★★☆ | High priority — strong combination of urgency and engagement |
| 12+ | ★★★★★ | Critical — immediate action needed |
Positive Scoring Factors:
| Factor | Points | When It Applies |
| Auction proximity | +5 | Auction is 5 days away or less |
| Auction proximity | +4 | Auction is 6–7 days away |
| Auction proximity | +3 | Auction is 8–14 days away |
| Auction proximity | +1 | Auction is 15–30 days away |
| Inbound SMS reply | +4 | Contact has texted back at least once |
| Qualified lead | +4 | Marked qualified by the qualification system |
| Callback / inbound call | +3 | Contact called back |
| High equity | +3 | Judgment or opening bid < 50% of property value |
| Property value > $500k | +3 | High-value property |
| Property value > $200k | +2 | Above-average (does not stack with $500k bonus) |
| Positive sentiment | +2 | AI detected friendly tone |
| Deceased owner | +2 | Family may need help protecting their interest |
| Owner role | +1 | Direct owner (not a relative) |
Negative Scoring Factors (Deductions):
| Factor | Points | When It Applies |
| Hostile sentiment | −3 | Active profanity-tagged suppression (see note below) |
| Negative sentiment | −1 | Frustrated or uninterested tone |
| Unresponsive | −2 | 10+ outbound touches with zero inbound replies |
Hostile definition: A contact is flagged "hostile" only when a human has tagged their suppression record with reason='harassment' — i.e., they actually used profanity, slurs, or threats. Multiple frustrated calls, "not interested" SMS, or a sharp tone do not promote a contact to hostile — those are at most "negative".
Example — 5-Star Contact: Auction in 6 days (+4) + texted back (+4) + high equity (+3) + $300k property (+2) = 13 points → 5★
Example — 1-Star Contact: No auction date (0) + no replies (0) + 12 outbound touches with no response (−2) = −2 points → 1★
7. Contact Detail Panel
Clicking a queue entry (or answering an inbound call) loads the full detail panel on the right. At the top is a compact header with everything you need at a glance:
NAME & PHONE
Full name + formatted phone number + three linked shortcuts: Property Audit, View Auction, View Appraiser.
APPT BOOKED BANNER
A pill-style green banner appears when the contact has an active appointment. Shows day + time. Click the banner to open a confirm dialog that cancels the appointment in GHL and the dashboard. See section 15.
SENTIMENT BANNER
A pill-style banner appears when the contact has notable sentiment:
HOSTILE CONTACT Red with glow — profanity/harassment on record. Proceed with extreme caution or dispose via suppression.
NEGATIVE SENTIMENT Orange — frustrated or disinterested tone detected. Not hostile, but tread carefully.
POSITIVE SENTIMENT Green — receptive tone detected.
The banners are width-to-content (pill-sized), not full-width stripes.
ADDRESS + COUNTY
Property address with city and county in parentheses.
AUCTION COUNTDOWN
Days until auction + absolute date. Red if ≤5 days, amber if ≤14, green otherwise.
EQUITY SNAPSHOT
Property value minus judgment/opening bid, shown as both dollars and percent. Instant deal-quality read.
TOUCHES & LAST
Total outbound touches (SMS + calls) and time since the last outbound attempt.
8. Channel Tabs (Phone / SMS / Email)
Below the header sits a row of channel tabs. The one on the left (PHONE / SMS / EMAIL) swaps the compose area and timeline view. To the right of those, a cluster of action buttons (Book / Done / Wrong # / suppress / Later / 📝 Notes) works regardless of active channel.
PHONE TAB
DIAL
Green DIAL button. Initiates an outbound call via your browser, using a regional outbound number assigned to this contact.
IN-CALL CONTROLS
During an active call: MUTE, BOOK APPT (book mid-call), SEND CALLBACK # (text the owner callback number), CAPTURE CONTACT (save discovered contact info), and END CALL. END CALL now performs both a browser-side disconnect and a server-side Twilio REST force-hangup that terminates the bridged PSTN leg — so the cell side of the call actually ends even under edge cases.
POST-CALL DISPOSITION
When a call ends, a disposition overlay appears with outcome options: Appt Booked, Interested, Callback Later, Passed to Owner, Got Owner Info, Already Resolved, Not Interested, No Answer, Spanish Speaker, Wrong #, Suppress Person, Suppress Property. Pick one, add notes (one sentence goes a long way), then click Submit & Next.
CALL HISTORY
Timeline of every past call: direction, duration, AI summary, sentiment, expandable transcript. AI (Retell) calls and human calls are styled differently.
SMS TAB
MESSAGE THREAD
Full SMS conversation in chronological order (oldest at top, like a phone's messaging app). Inbound on left, outbound on right, timestamps + IN/OUT labels.
TEMPLATE QUICK-BUTTONS
A row of template buttons above the compose box. Click one to auto-fill a pre-written response with variable substitution ({first_name}, {property_address}, {auction_date}). Templates include: Book Appt, Intro, Deceased, Lawyer, More Info, Spanish, Why Me?. The Book Appt template auto-pulls the next calendar slot and books the appointment when the SMS sends.
COMPOSE + MMS
Type a custom message and hit SEND (or press Enter). You can drag-and-drop or paste an image directly into the compose box to send MMS. The "Replying from" line below shows which Twilio number will be used.
CLAUDE DRAFT BAR
When the AI auto-reply system has drafted a suggested response, it appears in an amber bar above the compose box. Options:
Send Draft — ship it as-is.
Edit — drop it into the compose box for tweaks.
Dismiss — reject the draft.
Pause Auto — stop auto-drafting for this conversation.
EMAIL TAB
EMAIL THREAD & COMPOSE
Past email exchanges with sender/subject/timestamp. Compose area has a template picker, subject line, rich-text body, and auto-included MUCE signature. Sends via SendGrid.
Note: During an active call, the channel tabs lock to PHONE. You cannot switch to SMS or Email mid-call.
9. Action Buttons
The row to the right of the PHONE/SMS/EMAIL tabs is the quick-action cluster. These work regardless of which channel tab is active:
📅 Book
Opens the appointment booking modal. Shows available calendar slots organized by date. Click a slot to book.
✓ Done
Marks the contact as responded. Removes them from the RESPOND queue. Use this when you've handled the contact without another tracked action.
📞 Wrong #
Dispositions the touch as a wrong number. Opens a confirm overlay for notes.
🚫👤 Suppress Person
Adds an active suppression on this phone number for this person. Stops all future outreach to them.
🚫🏠 Suppress Property
Adds a suppression on the property's raw_row_id. Stops all future outreach to anyone associated with this property.
⏸ Later
Opens a 30-day calendar. Pick a future date to postpone outreach until then. 8-second undo window via the toast.
📝 Notes
Opens the Notes tab (see section 10). Green dot on the button when a note already exists.
AI BRIEFING
Opens the AI briefing modal (see section 11). A green dot appears on the button when a briefing is ready.
10. Notes Tab (Durable Per-Lead Note)
The 📝 Notes button opens a textarea backed by a single durable note per contact. Unlike per-call disposition notes, this is the standing context on the lead — visible to whoever picks up the contact next.
Type your note, click 💾 Save note. The "Last edited by {agent} · {time ago}" line updates. When any contact has a saved note, the Notes button shows a small green dot so the next agent knows to check.
Use it for: "Paid taxes on 4/17, waiting for cancellation", "Handed off to Suzanne's queue for 1st appt", "Will call back after 3pm EST", "Spoke to son Mark — routing through him". Keep it to one or two lines.
11. AI Briefing
When you select a contact, an AI briefing is precomputed in the background. The AI BRIEFING button shows a green dot when ready. The briefing includes:
CALL GUIDANCE
Situation-aware advice: hostile contacts get de-escalation tips, positive get rapport-building suggestions, relative-of-deceased get compassionate framing, etc.
HISTORY
Summary of prior communications — calls, SMS, last contact, and key outcomes.
KEY CONTEXT
Property details, auction timing, equity, family situation, anything notable.
SUGGESTED APPROACH
Recommended opening line and overall conversation strategy.
WATCH OUT FOR
Potential objections or landmines to anticipate.
12. Softphone Widget (Recents / Keypad / Voicemail)
The floating panel in the bottom-right corner of the screen is the softphone widget. It's a dedicated phone-like surface that's always available — even when no contact is selected.
MINIMIZED STATE
When collapsed, the softphone is a small circular icon (48x48) with a phone glyph. Click anywhere on the circle to expand. Drag it to move it anywhere on screen — the widget distinguishes drag from click by travel distance (>4px = drag, ≤4px = click).
EXPANDED STATE
When expanded, the widget has a header with the − minimize button and three bottom tabs: Recents, Keypad, Voicemail.
RECENTS
The last 25 calls (human + AI) sorted by time. Each entry shows caller name/phone, direction, duration, and an AI tag if the call was handled by the AI agent. Click a name to load the full contact detail panel for that person.
KEYPAD
Standard numeric keypad for dialing arbitrary numbers. Type or tap digits, then hit the green Dial key.
VOICEMAIL
The last 25 inbound voicemails. Each entry shows caller name, phone, timestamp, and duration. Every voicemail has an inline audio player (fetched securely via a Twilio proxy) so you can listen in-dashboard, and a CALL BACK button that loads the caller into the detail panel for an immediate return call. New voicemails during your session toast in and bump a red badge on the Voicemail tab — badge clears when you open the tab.
ACTIVE CALL
When a call is active, the softphone switches into a compact in-call view with the caller's name, direction (← IN / → OUT), a timer, and the call controls (Mute, Keypad for DTMF, and END CALL). This mirrors the in-call UI at the top of the detail panel.
13. Incoming Calls
When INBOUND is ON, your voice status is Ready, and a call comes in:
RINGTONE
An audio ringtone plays until you answer or decline. Make sure browser audio is not muted.
TAB TITLE FLASH
The browser tab title alternates "INCOMING CALL" / "Outreach HQ" every 800ms — visible even if the tab is in the background.
BROWSER NOTIFICATION
If the tab is unfocused and you've granted notification permission, a desktop notification appears with the caller's number. Clicking it brings the dashboard to front.
20-SECOND TIMEOUT
If no one answers within 20 seconds, the call is auto-declined and the overlay dismisses. Twilio falls the call over to the voicemail TwiML, so the caller still gets to leave a message.
The incoming call overlay shows:
- Caller Phone — formatted number.
- Contact Name — if we have a record of them.
- Property Address — if known.
- Context badges — OWNER / RELATIVE, DECEASED OWNER, HOSTILE / NEGATIVE, auction urgency (e.g., "3d TO AUCTION").
- Detail lines — owner name (for relative calls), equity snapshot, auction type + date.
- ANSWER — accepts. The overlay closes; the detail panel is already loaded (preloaded during ring).
- DECLINE — rejects. Caller still hits voicemail TwiML.
Note: The detail panel loads during the ring, not after you pick up — so the moment you answer, name, timeline, AI briefing, and channel tabs are already in place.
14. Voicemails (Inbound)
The Inbound Call Router routes a caller to your browser only when the agent pool has at least one live, voice-ready session with INBOUND toggled on and not on a call. If none of those are true, the caller hears a brief "all agents are busy" prompt and is invited to leave a voicemail.
Every voicemail is logged to ops.human_call_log with disposition=voicemail and the Twilio recording URL. In your softphone's Voicemail tab, voicemails show with an inline audio player and a CALL BACK button. New voicemails during your session toast in real time and badge the Voicemail tab.
Who hears voicemail instead of your browser ring?
- Callers when the INBOUND toggle is OFF (AI handles them instead).
- Callers when no agent has voice in Ready state.
- Callers when every ready agent is already on a call (on_call=true).
- Callers whose ring times out after 20 seconds because nobody answered.
15. Cancelling Appointments
When a contact has a booked appointment, a green ✓ APPT BOOKED banner shows in the contact header with the date + time and a small "(click to cancel)" hint.
Click the banner to open a confirm dialog: "⚠️ Cancel appointment? {name} / {time} ET. This marks it CANCELLED in GHL and the dashboard. This cannot be undone here." Click OK to confirm.
On confirm:
- A "Cancelling appointment…" toast appears and the banner hides optimistically.
- GHL is updated via the High Level API (appointmentStatus = cancelled).
ops.lead_appointments status is set to cancelled.
- A cancellation event is logged to
ops.lead_appointment_events with your agent name and note "Cancelled from Outreach HQ".
- A "Appointment cancelled" success toast confirms.
If the cancellation fails (network, GHL API error), the banner is restored automatically and an error toast explains why.
16. Change Outbound Number
The "Replying from" line below the SMS compose box shows which Twilio number your outbound messages and calls go out from. Each contact is assigned a sticky outbound number from a regional pool based on their county so the same caller ID is used repeatedly.
If the current number is flagged as spam or unreachable, click the 🔄 (refresh) icon. A warning confirms. On confirmation, the preference is cleared and a new number is assigned from the same regional pool. The display updates immediately.
Trade-off: the contact will no longer recognize your previous caller ID after the change.
17. Keyboard Shortcuts & Quick Tips
- Enter — Sends the SMS message currently in the compose box.
- ESC — Closes the AI Briefing modal.
- Drag & drop or paste an image directly into the SMS compose box to send as MMS.
- Search bar — Type to filter the queue by name, address, phone, case number, city, or county. 200ms debounce, case-insensitive.
- Click stars to see scoring — Star ratings are clickable; popover shows the full scoring breakdown.
- Channel tabs lock during calls — Phone is locked during an active call; SMS/Email are temporarily unavailable.
- Undo postpone — After postponing a contact, you have 8 seconds to click "Undo" on the toast.
- Drag the softphone — The softphone widget is fully draggable in either minimized or expanded state.
- Grant notification permission — So incoming call alerts work when the tab is backgrounded.
- Keep the tab open — For your browser to receive inbound calls, Outreach HQ must be open, voice must be Ready, and INBOUND must be ON. Anything else and callers go to voicemail.
- RETRY VOICE — If voice status sticks on "Voice offline", click the inline RETRY VOICE button to rebuild the connection without logging out.
- Dev console — Voice transitions log as
[voice] FROM → TO (reason). Hang-ups log as [voice] endCall clicked + [voice] force-hangup ack. Useful if voice misbehaves.