You spent $80k on a trade show booth. The team scans 400 badges. Three weeks later, AEs are still arguing over who owns which lead and 60% of the list has gone cold. The fix is not more reps, it is a same-day pipeline. Backstage gives you the data; CRM gives you the routing.
Backstage as the event source of truth
Backstage handles registration, ticketing, agenda, and on-site check-in. Each registrant is a record with name, email, company, title, session interest. That is the lead data; you do not need a separate scanner app.
Booth interactions via mobile check-in
Reps at the booth open the Backstage app, scan badge QR codes. Each scan logs an Interaction with rep ID, booth, timestamp, and free-text notes. Push every scan to CRM in real time.
// Backstage webhook handler
attendee = input.attendee;
existing = zoho.crm.searchRecords("Leads","(Email:equals:" + attendee.email + ")");
if(existing.size() == 0)
{
existing = zoho.crm.searchRecords("Contacts","(Email:equals:" + attendee.email + ")");
}
if(existing.size() == 0)
{
newLead = {
"First_Name":attendee.first_name,"Last_Name":attendee.last_name,
"Email":attendee.email,"Company":attendee.company,"Title":attendee.title,
"Lead_Source":input.event_name,"Scan_Notes":input.notes,
"Owner":lookupOwnerByRep(input.scanner_id)
};
zoho.crm.createRecord("Leads", newLead);
}
else
{
zoho.crm.createRecord("Tasks", {"What_Id":existing.get(0).get("id"),"Subject":"Booth scan at " + input.event_name,"Description":input.notes});
}
Hot lead routing within 4 hours
Add a Hot tag in the scanner app for high-intent conversations. Hot scans bypass triage and go straight to the AE owning that account, with a Cliq alert. SLA: AE outreach within 4 hours of scan, not 4 days.
Session attendance as intent signal
Backstage logs session check-ins. An attendee who joined three product-focused sessions is qualitatively different from one who only hit the welcome reception. Compute a session intent score per attendee, write to the CRM Lead.
sessions = zoho.backstage.getAttendedSessions(eventId, attendee.email);
intentScore = 0;
for each s in sessions
{
if(s.track == "Product") intentScore = intentScore + 10;
if(s.track == "Use_Case") intentScore = intentScore + 5;
if(s.is_keynote) intentScore = intentScore + 2;
}
zoho.crm.updateRecord("Leads", leadId, {"Event_Intent_Score":intentScore});
Auto-trigger the post-event sequence
Day 1 after event, fire a Campaigns sequence segmented by interaction type: scanned-only, attended-session, attended-demo. Each gets a different opener. Generic “thanks for visiting” emails get archived unread.
Owner routing by territory and language
Some events span regions. Match the Lead’s country/language to a routing rule that picks the right AE pod. Default to the booth scanner only if no territory rule matches.
Lost-and-found: badge swaps
A common mess: Bob scans Alice’s badge by accident. Build a 5-minute undo: rep can mark a scan as Mistaken in the app, which deletes the CRM record (or unmarks the Hot tag).
Reporting: cost per qualified lead
Roll up: total event cost / number of CRM Leads with Event_Intent_Score >= 20 / number that progressed to Discovery. This is the ROI conversation finance asks for in the next budget cycle.
What to do this week: wire the Backstage webhook to CRM lead creation, add the Hot tag, and ship the 4-hour SLA Cliq alert. Your next event will pay back the integration in the first week of follow-up.