Client Relations Dashboard
A built-in mini-CRM that tracks what your clients view, favorite, and inquire about — so you can have smarter conversations and close deals faster
Client Relations Dashboard
Every visitor to your website leaves a trail of intent signals: the listings they view, the photos they linger on, the inquiries they submit. The Client Relations Dashboard captures all of that and presents it as a unified client profile, giving you the context you need before every call, showing, or follow-up.
Why This Matters for Luxury Real Estate
In the luxury market, relationships are everything. Your clients expect you to remember what they care about. This dashboard turns anonymous website traffic into actionable intelligence:
- Know before the call — See exactly which properties a client viewed before they reached out
- Spot intent signals — A client who viewed the same listing five times and opened the virtual tour is ready to schedule a showing
- Never drop a lead — Every inquiry from every form lands in one place, deduplicated by email
- Track your pipeline — Move clients through stages from first inquiry to closing
Plan Availability
The Client Relations Dashboard is tiered across subscription plans:
| Capability | Agent ($99) | Professional ($199) | Prestige ($449) |
|---|---|---|---|
| Contact capture and UTM tracking | Yes | Yes | Yes |
| Unified leads list (basic) | Yes | Yes | Yes |
| Full client list with filters and sorting | -- | Yes | Yes |
| Client profile with all tabs | -- | Yes | Yes |
| Behavioral tracking (views, events) | -- | Yes | Yes |
| Communication log | -- | Yes | Yes |
| Lead scoring (hot/warm/cold) | -- | -- | Yes |
| AI behavioral summaries | -- | -- | Yes |
| AI research panel | -- | -- | Yes |
Agent plan users see the Clients link in the sidebar with a "Pro" badge. They can view a basic leads list but cannot access individual client profiles or the full dashboard.
Professional plan users get the full client list, individual profiles with all tabs (Overview, Properties, Timeline, Notes), and behavioral tracking data.
Prestige plan users get everything above plus the Insights tab with lead scoring, AI-generated behavioral summaries, and an AI research panel for asking questions about client behavior.
How Clients Are Created
Clients are created automatically. You never need to manually add someone.
Automatic Creation from Form Submissions
When a visitor submits any form on your website, a contact record is created or updated:
- Contact forms — General inquiries, listing-specific questions
- Buyer questionnaire — Captures price range, property type, and timeline preferences
- Home valuation requests — Seller leads with timeline data
- Landing page forms — Leads from your single-property marketing pages
Deduplication by Email
Every contact is identified by their email address within your workspace. If someone submits multiple forms over time, all of their activity rolls up to a single client record. The total_inquiries counter increments with each submission, and last_inquiry_at is updated.
This means you will never see duplicate entries for the same person, even if they inquire about different listings weeks apart.
Visitor Tracking and Retroactive Linking
This is where the dashboard becomes powerful. Here is how anonymous browsing data gets connected to a real person:
- First visit — A visitor lands on your site. A persistent cookie (
1oak_vid) is set with a unique session ID. This cookie lasts one year. - Browsing — As the visitor views listings, opens photo galleries, clicks virtual tours, or shares listings, each action is recorded with that session ID.
- Form submission — When the visitor eventually fills out any form, their email creates (or matches) a contact record.
- Retroactive linking — All prior page views and listing events associated with that session ID are linked back to the newly created contact record.
The result: when you open a client's profile, you see not just their inquiry, but every listing they browsed before reaching out. A buyer who viewed twelve waterfront condos before asking about one of them is telling you something important about their preferences.
Navigating the Dashboard
The Clients section appears in your dashboard sidebar between Listings and Marketing. A badge shows the count of unread contacts (matching the leads badge count).
Client List Page
Route: /dashboard/clients
The main view is a filterable, sortable table of all your clients.
Search and filters:
- Text search by name or email (300ms debounce for fast filtering)
- Status dropdown: New, Contacted, Qualified, Client, Archived
- Results show total client count
Table columns:
- Client — Avatar with initials, name (or email prefix if no name), and email
- Score — Lead score badge showing numeric score and tier (hot/warm/cold). Prestige only.
- Status — Color-coded badge
- Inquiries — Total inquiry count
- Views — Total page view count
- Tags — Up to 3 visible tags with overflow count
- Last Active — Relative time (Today, Yesterday, 3d ago, 2w ago, etc.)
Sorting: Click any column header (Client, Score, Inquiries, Last Active) to sort ascending or descending.
Bulk actions: Select clients with checkboxes, then choose a status to apply to all selected. Useful for batch-updating a group of leads after a follow-up session.
Pagination: 50 clients per page with Previous/Next navigation.
Client Profile Page
Route: /dashboard/clients/[id]
Click any row in the client list to open a full profile. The page has a header with back button, avatar, name, status badge, email, and phone, followed by a tabbed interface.
Profile Tabs
Overview Tab
The default view when you open a client profile. Organized as a two-column grid on desktop.
Left column:
- Contact Information — Email, phone, first seen date, last active date
- Quick Stats — Four cards showing total inquiries, total page views, days known, and days inactive
- Status — Pipeline selector with clickable pills: New, Contacted, Qualified, Client, Archived. Click to instantly update.
Right column:
- Lead Score — Score badge, visual progress bar, and expandable breakdown by category (inquiry, visit frequency, engagement depth, recency). Each category shows its score vs. maximum and individual detail items. Prestige plan only.
- Tags — View, add, and remove tags inline. Tags are free-form text, up to 20 per client. Use them for categories like "waterfront", "investor", "relocation", or "open house attendee".
- Quick Notes — A textarea for freeform notes about this client. Save button activates when content changes.
Properties Tab
Shows which listings this client has interacted with, split into three sub-tabs:
Viewed — Listings the client has viewed on your site. Each card shows how many times they viewed it and the most recent view date.
Favorited — Listings the client has saved. This includes both database-stored favorites (from logged-in visitors) and anonymous localStorage favorites that were retroactively linked when the visitor later submitted a form.
Inquired — Listings the client has submitted an inquiry about. Shows how many times they inquired and the most recent inquiry date.
Each property card displays:
- Listing photo (thumbnail)
- Address and city
- Price
- Beds, baths, square footage
- Status badge (if not Active)
- Interaction count and date
Clicking a property card opens the listing in a new tab.
Timeline Tab
A chronological activity stream of everything this client has done on your site, grouped by date.
Event types:
- Contact submissions — Form inquiries with message preview, inquiry type badge (Listing, Valuation, Buyer, General), and UTM source attribution
- Landing page leads — Form submissions from your property marketing pages
- Page views — Which listings they viewed, with timestamps
- Listing events — Granular engagement: opened photo gallery, viewed virtual tour, shared a listing, opened contact form, scroll depth percentage, time spent on page
Filters: Toggle between All, Inquiries, Views, and Events with counts for each category.
Pagination: Shows 30 events initially with "Load more" button showing remaining count.
UTM tracking: When a client arrived via a trackable link (e.g., from a Facebook ad or email campaign), the UTM source and medium appear on the timeline event.
Insights Tab (Prestige Only)
AI-powered analysis of your client's behavior. This tab only appears for Prestige plan subscribers.
Lead Score Breakdown: Full category-by-category scoring with visual progress bars and detail explanations. Categories include:
- Inquiry (up to 35 points) — Number and recency of form submissions
- Visit frequency (up to 25 points) — How often and recently they browse
- Engagement depth (up to 20 points) — Gallery views, virtual tours, sharing, scroll depth
- Recency (up to 20 points) — How recently they were active
Score tiers:
- Hot (70-100) — High intent, prioritize follow-up
- Warm (30-69) — Engaged, nurture the relationship
- Cold (0-29) — Early stage or gone quiet
AI Behavioral Summary: Click "Generate" to create an AI analysis of the client's browsing patterns, price range interests, property type preferences, and engagement trends. Summaries are cached for 24 hours. Click "Refresh" to regenerate after the cache expires.
AI Research Panel: Type any question about this client and the AI will analyze their behavioral data to answer. Example questions:
- "What price range interests this client?"
- "Are they likely a buyer or investor?"
- "What listings should I recommend?"
- "What neighborhoods do they prefer?"
Click a suggestion chip to populate the question field, or type your own.
Notes Tab
A structured communication log for tracking all your interactions with this client outside the website.
Entry types:
- Note — General notes and observations
- Call — Phone call summaries
- Email — Email correspondence records
- Meeting — Meeting notes (showing, closing, consultation)
- SMS — Text message records
Adding entries: Select the entry type, write your note, and click "Add Entry." Entries appear in reverse chronological order with an icon indicating the type and a timestamp.
This is separate from the "Quick Notes" textarea on the Overview tab. Quick Notes is for a running memo. The Notes tab is a formal communication log with typed, timestamped entries.
Scoring Methodology
Lead scoring is behavioral only. The system never uses demographic information (Fair Housing compliant).
| Category | Max Points | Signals |
|---|---|---|
| Inquiry | 35 | Number of form submissions, recency of last inquiry |
| Visit frequency | 25 | Total page views, unique visit days, recency of last visit |
| Engagement depth | 20 | Gallery opens, virtual tour clicks, share actions, scroll depth, time on page |
| Recency | 20 | How recently the client was active (decays over time) |
Scores are computed on demand when you view the client list or profile. They are not stored — they reflect the latest behavioral data each time you look.
Tips for Agents
Build a Daily Routine
- Open the Clients page each morning
- Sort by "Last Active" descending to see who was on your site yesterday
- Check any Hot leads first — these clients are showing high intent
- Review their Properties tab to see what caught their eye
- Use the Notes tab to log your follow-up calls
Use Tags Strategically
Create a consistent tagging system for your practice:
- Source tags: "open-house", "referral", "instagram", "zillow"
- Interest tags: "waterfront", "condo", "new-construction", "investment"
- Timeline tags: "ready-now", "6-months", "just-looking"
- Price tier tags: "under-1M", "1M-5M", "5M-plus"
Read the Timeline Before Calling
Before you pick up the phone, open the client's Timeline tab. If they viewed a specific listing three times this week, lead with that property. If they browsed ten condos in Brickell, you know their neighborhood preference without having to ask.
Move Clients Through the Pipeline
Keep your pipeline clean:
- New — Just submitted a form, no contact yet
- Contacted — You have reached out at least once
- Qualified — You have confirmed they are a real buyer or seller with a timeline
- Client — Active client relationship, showing properties or listing their home
- Archived — Went cold, closed the deal, or no longer active
Use bulk actions to update multiple clients at once after a follow-up session.
Use AI Research (Prestige)
The AI research panel is most useful when you have a client with significant browsing history. Ask it to identify patterns you might miss:
- Price range trends (are they looking higher or lower over time?)
- Neighborhood clustering (do their views concentrate in certain areas?)
- Property type preferences (condos vs. single family vs. townhouses)
- Engagement patterns (do they browse more on weekends?)
API Routes
For developers and integrators, these are the endpoints powering the dashboard:
| Method | Route | Purpose |
|---|---|---|
GET | /api/dashboard/clients | Paginated client list with filters |
GET | /api/dashboard/clients/[id] | Single client with score and timeline |
PATCH | /api/dashboard/clients/[id] | Update status, tags, notes, name, phone |
PATCH | /api/dashboard/clients/bulk | Bulk status update for selected clients |
GET | /api/dashboard/clients/[id]/properties | Viewed, favorited, and inquired listings |
GET | /api/dashboard/clients/[id]/notes | Communication log entries |
POST | /api/dashboard/clients/[id]/notes | Create a communication log entry |
POST | /api/dashboard/clients/[id]/research | AI research query (Prestige) |
POST | /api/dashboard/contacts/[id]/summary | Generate AI behavioral summary |
POST | /api/dashboard/contacts/scores | Batch lead scores for client list |
All routes require authentication and workspace membership. Rate limiting applies to AI endpoints.
Related Documentation
- Subscription Billing — Plan tiers and feature gating
- Landing Pages — Lead capture pages that feed into contacts
- Automations — AI-drafted content from listing events