Lead Scoring & Counselor Assignment
Overview
The HUPH system automatically:
- Groups leads into clusters (colleges) based on the program of interest
- Scores lead interest (hot/warm/cold) using AI
- Assigns leads to counselors via round-robin within each cluster
Counselors act as lead owners — this does not mean they immediately take over the chat. The AI bot continues answering student questions 24/7. Counselors monitor and decide when personal intervention is needed.
1. Cluster Assignment
How Leads Enter a Cluster
When a student mentions a study program in WhatsApp chat, the system automatically matches it to one of 5 clusters:
| Cluster | College | Programs |
|---|---|---|
| CASS | Art and Social Sciences | Architecture, Interior Design, Visual Communication Design, International Relations, Law, Communication, Criminology, Music |
| CBT | Business and Technology | Accounting, Informatics, Management, Hospitality & Tourism, Information Systems, Electrical Engineering, Industrial Engineering |
| CHS | Health Sciences | Biotechnology, Pharmacy, Medicine, Food Technology |
| CIST | Integrated Science and Technology | Physics, Mathematics, Civil Engineering |
| CNE | Nursing and Education | Nursing, English Education, Primary Education, Psychology |
When Clusters Can Change
A lead can switch clusters automatically if:
- Lead status is still New or Incomplete
- Owner source is still program_match (automatic)
- Student mentions a program in a different cluster
When Clusters Are Locked
Clusters cannot auto-switch when:
| Condition | Reason |
|---|---|
| Counselor already contacted (status = Contacted) | Counselor has invested time |
| Student is qualified (has email) | Complete data captured |
| Student is enrolled | Process continues |
| Student clicked "Register Now" (register_intent) | Already committed |
| Admin manually reassigned | Final override |
Counselors Get Notified
When a lead switches clusters, the previous counselor receives a notification: "Lead Fariz moved from CBT to CHS". The lead automatically appears in the new cluster counselor's list.
2. Lead Scoring
Score Labels
Each lead is scored by AI based on the conversation:
| Label | Score | Meaning | Example Signals |
|---|---|---|---|
| 🔥 Hot | 80-100 | Very interested, ready to register | Shared personal data, asked to be contacted, asked about test schedules |
| 🟡 Warm | 40-79 | Interested but not committed | Asked about costs, scholarships, compared programs |
| ⚪ Cold | 0-39 | Just browsing | General info, short session, no follow-up |
When Scores Update
Scores are updated at conversation milestones (not every message):
- Message 3 — first scoring
- Message 7 — second scoring
- Every 5 messages after — messages 12, 17, 22, etc.
Scores Are Not Real-Time Per Message
Between milestones, the score stays the same. This is intentional for efficiency.
Dashboard Display
On the Leads page, each card shows:
[New] [CBT] [Warm 55] [Counselor B] 10 Apr
Fariz 7 messages
📱 6287828002900
🎓 Informatika
3. Counselor Assignment
Auto-Assignment
When a new lead enters a cluster, the system automatically assigns it to a counselor using round-robin:
New lead enters CBT cluster:
→ Counselor A: last assigned at 09:00
→ Counselor B: last assigned at 09:15
→ Counselor C: last assigned at 08:30 ← longest wait
→ Auto-assign to Counselor C
Rules: - Counselor with the oldest last assignment = next in line - Inactive counselors are skipped - If no active counselors exist, admin gets notified
Assignment ≠ Takeover
Important
Being assigned to a counselor does NOT mean the counselor takes over the chat. The AI bot keeps responding.
Roles:
| AI Bot | Counselor | |
|---|---|---|
| When active | 24/7, every message | When deciding to intervene |
| Job | Answer FAQs, collect data | Monitor, personal touch, follow-up |
| Decision | Automatic | Counselor chooses when to jump in |
When to intervene: - Lead marked Hot (score ≥ 80) — automatic notification - Student requests human — bot auto-escalates - Student complains — bot auto-escalates - Counselor feels personal touch is needed
"My Leads" Dashboard
On the counselor dashboard, the My Leads widget shows:
| Group | Meaning |
|---|---|
| Bot handling | Bot is still responding, counselor just monitors |
| I'm handling | Counselor has taken over the chat |
| Waiting for reply | Student hasn't responded yet |
Manual Reassign & Release
On the lead detail page:
- Reassign — move to another counselor in the same cluster
- Release — remove assignment, lead returns to unassigned pool
Admin/Marketing Admin can reassign across clusters.
Workload Dashboard (Admin Only)
Admins can see workload distribution per counselor:
CBT Cluster
Counselor A ████████░░ 8 leads
Counselor B ██████░░░░ 6 leads
Counselor C ████░░░░░░ 4 leads
4. Complete Flow: From Chat to Follow-Up
Student sends WhatsApp: "I'm interested in informatics"
│
├─ Bot responds (24/7, instant)
│
├─ Lead enters CBT cluster (automatic)
│
├─ Auto-assign to Counselor B (round-robin)
│ → Counselor B gets notification
│
├─ Scoring at message 3: "Warm 55"
│ → Badge appears on dashboard
│
├─ Student continues chatting → bot keeps responding
│
├─ Student provides email → status becomes Qualified
│ → Cluster locked (no more auto-flip)
│
├─ Scoring at message 7: "Hot 85"
│ → Notification to Counselor B: "Hot lead!"
│ → Counselor B decides: take over or let bot continue
│
└─ Counselor B follows up by phone
→ Marks as Contacted
5. FAQ
Q: Why didn't my lead switch clusters after the student mentioned a different program? A: The lead is likely locked. Check the status — if it's Contacted, Qualified, or Enrolled, the cluster won't auto-switch. Use manual Reassign on the lead detail page.
Q: Why isn't the score changing after the student sends a message? A: Scoring only updates at milestones (messages 3, 7, 12, 17...). Between milestones, the score stays the same.
Q: Can I reassign a lead to a counselor in a different cluster? A: Counselors can only reassign within their cluster. Admin/Marketing Admin can reassign across clusters.
Q: What happens when a counselor is deactivated? A: New leads skip inactive counselors. Already-assigned leads stay assigned — admin must manually reassign.
Q: A student mentions a program not in the list (e.g., "Product Design"). What happens? A: The lead is created but without a cluster. It appears as "unassigned" on the dashboard. Admin can manually assign to the appropriate cluster.