How to Create an Uber-like Referral Program?
One of the most effective customer acquisition channels in sharing economy relies on heavy software machinery. If you’re wondering what it takes to implement a similar referral engine and how specific cogs impact the bottom line, we have you covered. Read this article for an in-depth look into referral program mechanics and then see how you can get similar results with our API – at a fraction of the cost.
Table of contents:
1. Uber referral program basics
2. Reward engine
- Reward catalog
- Referral conversion event
- Reward eligibility
3. Sharing and notifications
- Unique and personalized codes
- Referral codes redemption
- Performance tracking
4. Programs maintenance and monitoring
5. Showcase video - Uber-style referral program with Voucherify
TLDR: Implementing a happy path of the Uber-like referral program is one thing, but preparing the system for scale and requests from marketing and customer success teams is a helluva different story.
The referral program in a nutshell
A part of Uber’s referral program that moves the needle is dual-sided rewards. Both the referrer and the invited friend get incentives - extra $20 to their account, which basically means a free ride. Looks simple. But when you look deeper, you’ll see that their program contains a wealth of referral campaigns with various rewards targeted at different countries or even cities.
Add A/B tests on top of on that and you’ll end up with hundreds of projects spanned across the globe, managed by dozens of teams.
To make matters more complicated, Uber also offers a driver referral program. Although it’s similar to the rider program, it has different mechanics under the hood.
Geo-targeting, internationalization, and user access management aren’t, of course, the hard-to-implement concerns for the software teams that want to build a similar system on their own. In the sections below, we’ll dive into 3 essential parts of the referral mechanics: reward engine, sharing and notification capabilities, and program maintenance. Along the lines, we’ll suggest how you can solve the issues with the Voucherify platform.
The incentives that propelled Uber’s referral program to its current heights sound very straightforward. However, if you’ve been paying attention, you must have noticed that they are evolving all the time. Let’s see what referral program features allow Uber to achieve their results.
Depending on the program, the reward might be credits added to an Uber account or cash payout. Also, the value of the prize varies from country to country or even city to city. Or, the reward often changes its value depending on the marketing campaign performance.
How does this work having this in mind these requirements? I believe Uber PMs determined it’s reasonable to enable the marketing team to choose rewards on a campaign basis. This approach would prevent frequent code changes in places that interact with the various rewards (e.g., referral code redemption points or referrals history view).
How it’s done in Voucherify
Voucherify referral programs work exactly this way. You integrate the redemption API endpoint once so that it will validate and accept all the future referrals.
When it comes to rewards, Voucherify offers 3 types:
- Credits added to a personal, rechargeable gift card,
- Loyalty points,
- Coupon codes (with value based on amount, percentage, or custom unit).
Want to increase or decrease the value of the reward? No problem, the API or dashboard enable your marketing team to do so at any time.
An extra word on how Voucherify treats discount coupons: they can be one-time-use or multiple uses. A case for the latter? In some cities, Uber has recently changed their reward from $10 credit to $5 off for the first 2 rides. This kind of coupon would do the work here.
To cover the cash payout option, you can use amount coupon objects combined with webhooks - our promotion engine notifies your payment processor the moment the reward (coupon) is assigned to a person. Then, you can extract the value of the coupon from a request payload and turn it into cash.
Referral conversion definition
Speaking of the rewarding workflow, sometimes the redemption of a referral code isn’t enough to reward the customers. First, you might want up the ante, e.g., refer 5 friends to get $5. Or even introduce referral tiers - refer 5 friends to get $5 and make it 10 to get $20.
Watching customer acquisition strategies for a while now, I’ve learned that ever-changing consumer habits can plow even a well-designed referral system..
This is why is the code responsible for determining conversion should be open to modification.
How it’s done in Voucherify
To achieve such an extent of flexibility, we have created a conversion event builder. It’s based on top of our multi-level reward engine and real-time events tracker.
In brief, there are two things which can activate a reward in Voucherify:
- Standard redemption event (or its multiple occurrences),
- Your custom event (e.g., a friend redeemed a code but you also want to delay the reward until a ride_finished event occurs).
You can use both of them for defining successful referral criteria. With this combination, one can quickly spin off programs like:
- A reward for every redemption of the code,
- A reward for X redemptions,
- XX reward for X redemptions and YY reward for Y redemptions,
- A reward for a single custom event occurrence (for example Uber’s bonus doesn’t get paid out unless the new driver completes more than 25 trips in their first 30 days),
- A reward for X custom event occurrences,
- XX reward for X custom event occurrences and YY reward for Y custom event occurrences.
So, with this capability, you can model even an advanced, multi-tier program like this driver referral program from the Uber Singapore chapter
It’s often the case that a successfully redeemed referral code shouldn’t trigger a reward for every customer. There are several limits you want to impose on your audience to protect your promotion budget. One of the basic limits is that you can’t refer the same person twice. But there are more:
- expire the discount after 90 days from the issue date,
- block referrals from a different country,
- block payout if a person has already earned $2000 per month,
- block a referrer whose account isn’t in good standing,
- reward only ex-Lyft drivers.
These are all real-life requirements from Uber’s referral program terms. Verifying this kind of attributes against your promotion rules requires a pretty tight connection to a CRM, so make sure you’ll find a way to sync the data.
How it’s done in Voucherify?
Voucherify offers a dedicated CDP (customer data platform) which allows syncing with any CRM through the API (with some native integrations like Salesforce, Woocommerce, Magento, BigCommerce). With this in place, our promotion engine allows you to create validation rules on top of customer data like:
- standard attributes (address, email, phone etc.),
- purchase history (number of order, total order amount, order frequency),
- custom fields,
- promotion activity (e.g. if a referee has already redeemed one of your coupons before),
- promotional budget.
You can apply these rules both to the referrer and referee. The best thing about it is that the segments work real-time - change the flag/attribute with the API or dashboard and the customer pops in/out of the segment and starts/stop being compliant with a validation rule.
With the dashboard, a marketer can build a model with the limits like these from Uber’s program under 5 minutes. And then, change it anytime you want.
Sharing and notification capabilities
One of the essential factors of Uber’s referral program success is great experience throughout the whole customer journey. Starting from a simple invitation form, through piece-of-cake-like sharing, to the ability to track the referrer’s progress.
To achieve this, Uber connected their referral engine to numerous marketing channels.
Unique and Personalized codes
The pillar of any program (not only Ubers’) is unique referral codes. This is how you can track if word of mouth works at the end of the day. However simple it sounds, there are several caveats you should take into account when planning how to ensure true uniqueness. To name a few (looking for a complete random codes algorithm? Check here):
- Codes shouldn’t be too long - 8-12 characters should be enough for any size (Uber’s fine with only 6);
- You should avoid ambiguous characters - e.g., the difference between O and 0 or I (uppercase i) and l (lowercase L) are hard to spot. Also, for a new customer, there’s nothing more irritating than a message saying “Your code is invalid” in their first experience with your brand;
- Cut the code into a few small chunks - e.g., ABCD-1234-XYZ - It’s a subtle change but it simplifies typing at the checkout view. This adds up to the overall buying experience and customer satisfaction.
But the biggest one is to ensure that the code is assigned to a single customer only once.
How it’s done in Voucherify
At its core, the platform relies on a unique code generator. It has numerous features that allow you to create referral codes of virtually any size and format. You can define:
- Characters length - Voucherify automatically calculates the maximum number of codes based on possible combinations;
- Code pattern - chunked (ABC-123) or continuous (e1m3c3a7) ; if chunked, what separator is used. Plus, you can add prefix and suffix for better branding or tracking;
- Charset - alphanumeric, alphabetical, numbers, custom one, including lower case and upper case;
- Size of a code bulk - you can cap the number codes up-front or use an auto-update mode which automatically extends a pool of codes if necessary.
When you’re ready to deliver the codes to your referrers, the engine takes care of publishing one and only one code to a single person. The code is marked as published and won’t be used ever again in the scope of this campaign (you can launch many referral programs and assign a single referrer a code from each of them).
[BONUS] Personalized codes
If you want to let your referrers create their own names as codes, as Uber did in the early days, Voucherify paves a way here. Custom codes like “Ride-with-Tom” drive engagement and improve the success rate of the referral campaign.
The problem, in this case, lies in maintenance overhead - it’s way easier for a duplicate. With Voucherify, you can create an empty campaign and use our API to populate it with custom names.
The referral engine will apply all the standard uniqueness rules and will help you inform the user about possible duplicates when claiming their code.
Referral code uniqueness is transparent to the user; it’s something implicit. So, let’s focus on what’s visible for customers.
One thing that made the program so popular is the easiness of, first, joining and, second, driving the program.
This part is often neglected by companies who want to run their first friend referral programs. As a result, the success rate of the program with even a generous incentive is decimated.
So let’s see how Uber makes enrolment easy:
- Dedicated website wooing users with “Free Rides” ad
- Post-purchase banners
Both in the web and mobile application, users are just a click/tap away from a referral code/link which can get them free rides or even greater rewards - like in the case of the driver referral program. Whatever channel they use, referrers don’t need to do anything to join the program, they’re all set up to share and win.
How it’s done in Voucherify
API-based approach allows you to integrate referral codes into any channel. If it’s bespoke software you have control over, you get the ultimate flexibility - you can use one of our SDKs to publish the referral code and then retrieve it every time you want to display it to a user. This includes web apps, in-app banners, email content, push notifications, live chat, POS, and any future channel.
This makes entry easy and allows for creating a unified referral experience throughout the whole user journey.
Additionally, Voucherify can send email/SMS/push notifications to periodically remind referrers that they should put their code into motion to win rewards (more about this in the “Performance tracking” section below).
Note: before you can enroll your customers into a referral program, you should import them to Voucherify. Our platform offers several options here:
- CSV/Excel import
- Bulk API import
- Real-time API sync
- Real-time sync with a native plugin (Salesforce, Woocommerce, Magento, Bigcommerce, Activecampaign, Mailchimp, Intercom supported)
Easy to redeem
Validating and redeeming the code is also seamless from a new Uber user’s point of view. They follow the link and the code is auto-applied to the sign-up form. Or, alternatively, you just need to paste it into the app.
Again, what seems straightforward on the surface also requires attention to detail. To achieve top-notch customer experience, Uber covers several use cases:
- If the code is valid, show a user the reward from a matching referral program;
- If it’s not, inform the user about the reason (it can be expired, inactive, or the user doesn’t satisfy a specific business rule);
- To personalize and thus strengthen your referral message, you can remind the referee who invited them. Uber tops this technique by showing the referrer’s face.
- [BONUS] Uber offers a retroactive referral - if you signed up and forgot to enter the code, you can contact Uber and get a code added as long as you’re within 15 days of activation.
How it’s done in Voucherify
As in the case of enrollment, Voucherify API redemption endpoints can be quickly connected to redemption points. Be it a website or mobile app, our SDKs will reduce the time of implementation to hours.
But there’s more. Our building blocks consist of web and mobile widgets, which you can brand and quickly inject into a redemption page. They use separate public API keys, so rest assured they won’t be used for malicious activity - plus, the rate limiter takes care of potential brute force attacks.
As for the retroactive referrals, your customer support agents can quick-click it with the dashboard.
The final stage of the referral program, from the referrer’s point of view, is to see how much they’ve earned so far and when they can redeem their reward.
Uber got this extremely right for their driver referral program.
Not only does the referrer dashboard show the list of all invited friends, but it specifies what stage they are in and what they need to complete to make the referrer eligible for a reward. With this knowledge, referrers know when to nudge their friends and when to expect the money.
Throughout the referral workflow, Uber notifies referrers about their friends’ status with relevant emails and push notifications.
How it’s done in Voucherify
The good thing is that you can achieve a similar notion of experience with Voucherify API:
- Get the list of referrer’s friends who used (redeemed) the code.
- Track custom events (e.g. a referee took their first trip) and use them to build a view of referees and their current status like the one from the Uber driver referral program
When it comes to having different reward values for customers from different segments (in Uber’s case it’s different city), Voucherify got you covered too. You can use tiers to model this case. It’s worth pointing out that tiers are based not only on the number of referred customers but on any validation rule you can come up with, this includes location, purchase history, or any other custom field.
When it comes to notifications, you will find the distribution manager helpful. The engine listens to the changes in customer segments and if criteria are matched, it sends a contextual message. You can choose one of several channels to send a notification. So, you can easily create these scenarios:
- Send a push notification when a referral code has been used;
- Send an email and a push notification when the referrer is eligible for payout;
- Remind referrers to share their code with SMS;
- Send a notification through a live chat;
- Invoke a webhook when tier 1 has been achieved;
- Any combination of these channels.
Email templates can be fully branded to match corporate identity style guide.
The distribution engine has native support for:
- Active Campaign
- Mailchimp and Mandrill
- CM telecom
- And many more with Zapier and webhooks
Programs maintenance and monitoring the bottom line
Implementing an initial design of your referral campaign is one thing, ensuring that it adheres to market reality is another one. Very often, it’s the program maintenance that takes most effort. This includes:
- Changing programs’ timeframes,
- Changing programs’ features, like making rewards more attractive for the holiday season,
- Launching multiple referral campaigns at the same time and A/B testing them,
- Replying to marketing with insights and reports on performance,
- Helping customer support agents solve “invalid” codes,
- Detecting fraud and deactivating accounts/referral codes,
- Adding new marketing channels for program promotion.
Ultimately, the plethora of things needed to cope with market dynamics impacted by competitors, regulation, or simply a calendar.
In the case of Uber, the number of modifications in the course of the year is huge that there are dedicated websites to track them. With this scale, I bet they had to incur a lot of development resources to build a machine that handles their programs.
How it’s done in Voucherify
There are a few components that reduce the workload necessary to manage running referral programs:
Marketer dashboard, which allows your team to:
- Edit campaigns at any time (rewards, timeframes, conversion points),
- Track referral history (globally, per campaign, or by a single customer - with various timeframes),
- View 360 customer profile (solve customer complaints/issues quickly with data from all referral program touch points).
- User management and approval workflows - invite team members to manage referral campaigns, grant fine-grained access with custom roles, and define who can and can’t approve a program’s launch.
- API keys - You can authorize different parties or marketing channels to access your API by issuing separate API keys. This includes also public API keys you can use directly on websites and mobile apps without a need of the back-end part.
- Webhooks - Likewise, if you need to notify other systems about any referral event without pulling Voucherify API, you can achieve this by using webhooks.
- Audit logs - finally, when the number of employees who manage the referral campaign grows, it’s useful from a security point of view to have the track of what they did in the system and when.
Uber-style referral program at a fraction of the cost
Uber has disrupted many areas of commuting. They have done so in online marketing as well. Having in mind ever-changing customer habits and new marketing channels popping once in a while, they’ve bet on a referral program built from scratch - as opposed to integrating one of a various cookie-cutter referral software available on the market.
I’m sure it did cost a lot, but it’s brought them unparalleled flexibility in exchange.
If your business is looking for a similar level of configurability, but you don’t feel like spending developer-months on building a referral platform from the ground up, you might want to give Voucherify a try.
It’s not a no-code solution, you still need developers - but with our programmable building blocks, you build a tailor-made referral campaign in days.
Learn how to implement referral programs and promo campaigns in no time