Salesforce AppExchange Lead Management
If you published your app on Salesforce AppExchange, you need a way to track and interact with your potential buyers.
This is possible thanks to Salesforce’s native features for lead management.
AppExchange Lead Management – What is Possible
Salesforce can create a lead record in your License Management Org (which is most probably just your Partner Business Org) when your potential customer does one of the following:
- Watches your demo on the app listing.
- Takes the Test Drive.
- Installs your app (whether on prod or on sandbox; both trial and active version).
- Clicks "Get It Now" (this is a bit different from the installation because you get the Get It Now lead even if the installation fails).
- Starts a free trial of the app configured via Trialforce.
You also have the ability to track how the lead discovered your app listing. More on that in the later section.
How to distinguish lead sources?
You guessed it. By looking at the Lead Source field on the lead record. Each of the lead-triggering activities from your app listing has its corresponding lead source code. The source for automatically created leads in this context is always in this format: SFDC-ACTIVITY_CODE|LISTING_NAME
. Additionally, if a lead is a duplicate (e.g. because your potential buyer took the test drive two times), the "dup" fragment is added before the listing name – SFDC-ACTIVITY_CODE-dup|LISTING_NAME
.
Here’s how this looks like in practice. The app name I used is the name of our amazing app for AppExchange Analytics – ISV Analytics.
SFDC-IN|ISV Analytics
– prospect clicked "Get It Now" button on our listing.SFDC-DM|ISV Analytics
– somebody watched the app demo.SFDC-TD|ISV Analytics
– potential buyer took the Test Drive.SFDC-TS|ISV Analytics
– prospective buyer used your Trialforce trial version of the app.SFDC-LM|ISV Analytics
– in the past, app listings could have a "Learn More" button exposed (now it’s replaced with Get It Now). This lead source corresponds to clicking that buttonSFDC-DM-dup|ISV Analytics
– somebody watched the demo for the second (generally, not first) time. This would look similar for other types of duplicates (e.g. SFDC-IN-dup|ISV Analytics for using Get It Now button multiple times).
Where is package installation in all of that?
This kind of event is treated a bit differently as it is not managed by integration with your listing, but by your License Management App. Which makes sense because you will receive a lead, even if the prospect installs your package via link, not necessarily through the AppExchange listing.
The lead sources for package installations are Package Installation
and Package Installation - Sandbox
. There is no special duplicate management here.
How to set up AppExchange Leads Collection
Prerequisites
Make sure that in your License Management Org, you have the Web-to-Lead functionality enabled and the captcha turned off.
Go to Setup → Web-to-Lead and edit the configuration.
Connect your License Management Org (LMO) to Partner Community
-
Log in to https://partners.salesforce.com/ and navigate to the
Publishing
tab. You’ll be redirected to the publishing console. -
Open the
Technologies
tab, clickConnect Technology
→Org
. -
You’ll be prompted to log in to Salesforce org. Use your LMO org credentials and approve the connection.
Note: If you use your Partner Business Org as your DevHub and License Management Org (you should!), it’s very probable that you’ve already connected your org here to integrate your package to the listing. If not, make sure to have both Devhub and LMO connected here.
Register Your Package in License Management App
- Stay in the
Technologies
tab of the publishing console and navigate to theSolutions
section. -
You should see your released packages here. Click
Register Package
near your latest package version. You will be prompted to provide login credentials to your License Management Org.
Make sure your package is linked to the listing
If you’ve already published the app, you must have done it. If not:
- Log in to https://partners.salesforce.com/ and navigate to the
Publishing
tab. - Open
Listings
, select your app listing, and navigate to theLink Your Solution
section. Choose the appropriate package and package version.
Enable Lead Collection for Listing Activities
As a last step, stay in the publishing console and enable the leads collection.
- Navigate to the
Grow Your Business
section. - Scroll down to
Leads
and provide your License Management Org id in theLead Org Id
field. - Depending on which activities you want to track, check appropriate boxes in the
Lead-Generating Activities
section. - Optionally, you can create separate campaign records on your org for each listing activity, and provide their ids here – this will allow you to dig deeper into your prospect’s journey (e.g. you will see that you have much more demo watches than test drive runs).
How Did the Lead Discover Your App – UTM Parameters and Referral Codes
In addition to just knowing that somebody is interested in your app, it might be very useful to know how they found it. This can allow you to track which of your marketing campaigns is the most effective and where you should concentrate your efforts.
In response to that need, Salesforce accommodated a marketing concept of UTM (Urchin Tracking Module) Parameters – those are just URL parameters used to track the effectiveness of marketing campaigns.
In practice, this means that when sharing a link to your AppExchange Listing, you can provide five additional URL parameters. Here’s how they are described in the marketing world:
Parameter | Description |
---|---|
utm_campaign | Marketing campaign that led to your listing. |
utm_content | Specific element clicked, e.g., banner or link. |
utm_medium | Marketing medium used, e.g., email, social media, browser. |
utm_source | Source of traffic, e.g., Google, newsletter. |
utm_term | Search term or keyword for paid search. |
You don’t have to include all of them and be strict to their purpose. You can fill them with any value you want.
In addition to that, Salesforce gives you the ability to specify an additional referral_code
parameter – in case you want to offer some discounts for app referrals.
The final effect could look similar to the links to our ISV Analytics app that I placed everywhere in this post.
Let’s look at the link: https://appexchange.salesforce.com/appxListingDetail?listingId=80874111-f687-44e4-8a51-016eb2c1624c&utm_campaign=BlogPost&utm_content=AppExchangeLeadMgmt&utm_medium=web&utm_source=Blog
Great, but where can I see it on the lead record?
Salesforce puts those parameters in the lead description field. If you clicked on the ISV Analytics link and watched the demo, we would receive a lead with the following description:
Did you notice the additional listing_url
and allow_contact_other_products
parameters?
The first one is obviously the app listing URL, and the second one is an indicator of whether the prospect accepted the consent to contact them for other offerings (when you watch an app demo on AppExchange, you’re presented with that consent).
Note: At the moment of writing this post, UTM Params are not collected for leads coming from "Get It Now" clicks. Here’s a known issue that SF Support team created when I submitted a case for that 😛 UTM Params Not Collected for Get It Know Leads. I hope they fix it finally as in the context of my next note below, we effectively never get UTM params for the most importand lead events.
Note2: Leads coming from the app installation event will not produce the UTM Params as well – as they are collected by a totally different mechanism, not necessarily related to your listing (e.g. app installation via URL).
More Advanced Customer Analytics
Tracking your AppExchange leads is fundamental to drive your app’s success. However, this might not always be enough.
There are other techniques and mechanisms to monitor your customer base health and evaluate marketing efficiency.
Be sure to learn more about the following topics:
- AppExchange App Analytics – a mechanism for tracking how your customers are using the app, what the features adoption is, how usage changes over time, etc.
- AppExchange Marketplace Analytics – tools for listing effectiveness tracking and marketing strategies evaluation.
- ISV Analytics for AppExchange App Analytics – the app I mentioned many times in this post. A full plug-and-play analytics solution for your AppExchange apps automating all the data collection burden, providing a full picture of your customer base health and app’s business performance.
Conclusion
Effective lead management is necessary to sell your AppExchange app. Salesforce provides easy ways to configure leads collection and simple mechanisms for marketing information tracking.
After connecting your orgs to the partner portal, you can monitor who and how interacted with your app listing. By using additional parameters in your links, you can evaluate your marketing campaigns’ efficiency or set up a referral program.
That’s it for today. If you have any questions related to Salesforce AppExchange, don’t hesitate to contact me directly (https://linkedin.com/in/bartosz-suchocki) or anyone on our amazing team (https://linkedin.com/company/beyondtheclouddev).