Built for startups,
scaled for unicorns
Successfully submitted!
Error! Please try again
Not all users interact with your referral program the same way. Some are active referrers generating multiple sign-ups, others joined but never shared, and many haven't heard about the program at all. By segmenting Intercom users based on their GrowSurf referral activity, you can deliver personalized messages, prioritize support, and create targeted campaigns that speak to each user's relationship with your referral program.
This guide covers creating Intercom segments using GrowSurf referral data, setting up targeted outbound messages for each segment, and using segments to enhance support interactions with referral context.
Ensure GrowSurf referral data is available as custom attributes on Intercom user profiles.
growsurf_participant (Boolean) β whether they're in the programgrowsurf_referral_count (Number) β how many people they've referredgrowsurf_referred_by (String) β who referred them (if applicable)growsurf_rewards_earned (Number) β total rewards earnedgrowsurf_last_referral_date (Date) β when they last made a referralBuild segments in Intercom based on referral program participation and activity.
growsurf_participant is false β haven't joined yetgrowsurf_participant is true β joined the programgrowsurf_referral_count > 0 β have made at least one referralgrowsurf_referral_count >= 5 β power users of the programgrowsurf_referred_by is not empty β came through a referralCreate Intercom outbound messages tailored to each referral segment.
Give your support team visibility into each user's referral activity to personalize interactions.
Set up Intercom automation rules that trigger based on segment membership changes.
Track how each segment responds to your messaging and how segments evolve over time.
// Sync GrowSurf referral data to Intercom custom attributes
async function syncReferralToIntercom(participantData) {
await client.users.update({
email: participantData.email,
custom_attributes: {
growsurf_participant: true,
growsurf_referral_count: participantData.referralCount || 0,
growsurf_referral_link: participantData.shareUrl,
growsurf_referred_by: participantData.referredBy || '',
growsurf_rewards_earned: participantData.rewardsEarned || 0,
growsurf_last_referral_date: participantData.lastReferralDate || null
}
});
}
// Intercom Segment Definitions (pseudo-config)
const segments = {
nonParticipants: {
name: 'Referral Non-Participants',
rules: [
{ attribute: 'growsurf_participant', op: 'ne', value: true },
{ attribute: 'signed_up_at', op: 'gt', value: '30 days ago' }
]
},
activeReferrers: {
name: 'Active Referrers',
rules: [
{ attribute: 'growsurf_referral_count', op: 'gt', value: 0 }
]
},
topReferrers: {
name: 'Top Referrers (VIP)',
rules: [
{ attribute: 'growsurf_referral_count', op: 'gte', value: 5 }
]
},
dormantParticipants: {
name: 'Dormant Participants',
rules: [
{ attribute: 'growsurf_participant', op: 'eq', value: true },
{ attribute: 'growsurf_referral_count', op: 'eq', value: 0 },
{ attribute: 'growsurf_last_referral_date', op: 'before', value: '30 days ago' }
]
}
};Your top referrers are effectively unpaid salespeople for your company. Give them priority support by routing their tickets to senior agents or faster queues. The goodwill you build with top referrers directly translates to more referrals and higher-quality advocates.
Monitor the "Referred Users" segment for churn signals. Referred users who become disengaged represent not just lost revenue but potential damage to the referrer's trust. Flag at-risk referred users for proactive outreach β keeping them happy keeps the referrer happy too.
Train support agents to mention the referral program after positive interactions. Create a saved reply in Intercom that agents can quickly send with the referral program details and a link to sign up. This personal touch converts better than automated messages.
Not directly. Intercom segments are primarily used for Intercom's outbound messaging and targeting. To trigger GrowSurf actions based on segment changes, you'd need to use Intercom's webhooks or API to detect segment entry/exit and then call GrowSurf's API accordingly.
Set up real-time syncing from GrowSurf to Intercom via webhooks. Every time a GrowSurf event fires (new referral, conversion, etc.), update the corresponding Intercom user attributes. Intercom segments re-evaluate automatically when user attributes change, so segments stay current.
Only if you need to target messages by campaign. For most use cases, a single set of referral segments works across all campaigns. Add a growsurf_campaign attribute if you need campaign-level segmentation, and use it as an additional filter within your existing segments.
Trusted by marketing and product teams at fast-growing B2C, fintech, and SaaS companies
