Proper architecture of your Salesforce Opportunity object is critical in helping facilitate an effective, modern sales motion.
This includes appropriately modeling the attribution of a given opportunity - both with respect to the humans (SDRs, AEs) who are responsible for an opp’s sourcing, and also the programs (marketing, sales, otherwise) responsible for an opp. Similarly, ensuring that opportunity stages are appropriately modeled and take into consideration key parts of the sales motion is vital for a well run, and “ready to be analyzed” sales motion. Lastly, ensuring that you have smart “Types” for your opportunities further enhances your ability to model and manage your sales motion.
Below we discuss the best practices in modeling your opportunities to enable the above.
Opp Attribution
Where an opportunity “came from” is a key topic for managing the success of your business. This typically comes in two forms - what “human” did the opportunity come from, and what marketing programs (or not) did the opportunity come from. We’ll discuss how best to model both here.
Human Attribution
In a world of SDR => Account Executive collaboration, ensuring a crisp definition of “who was responsible” for an opportunity is very important for answering all manner of questions - both about a given opportunity and also about all the opportunities that have “come from” a given person.
The ideal situation here is to ensure a User Lookup relationship between an opportunity and some user.
Created By: The simplest version of this is to just have the responsible user create the opportunity, thus making the “Created By” field act as that source of human attribution.
This means that whoever is responsible for the opportunity in question should either be creating the opportunity from a Contact, or converting a Lead into an Account, Contact, and Opportunity.
This is an example of what this looks like in practice:
“Sourced By”, etc.: The more sophisticated version of this is a dedicated User Lookup field that creates a relationship between the opportunity and the “sourcer.” This can be helpful if there is some manner of automation or otherwise that “creates” the opportunity, but you want to allow for a relationship between that opportunity and the responsible human.
This is an example of where there is a secondary user lookup field for “Sourced By” (And how we model this here at Atrium in our Salesforce instance):
Why To Do This: By ensuring a crisp connection between a specific human and the opportunities that come from them, you can calculate all manner of extremely important questions from this information.
For example:
- Which SDRs have generated the most opps? (Atrium “Opportunities Created”)
- Which SDRs have generated the most pipeline (by adding up the value of all the opps they’re responsible for)? (Atrium “Pipeline Created”)
- How much actual bookings have come from each SDR? All the SDRs? (Atrium “Bookings Sourced”)
- Which SDRs generate the opportunities with the highest win rate? (Atrium “Win Rate on Opps Sourced”)
- Which SDRs generate the opportunities with the high Average Selling Price? (Atrium “ASP on Opps Sourced”)
- Which SDRs have generated how much pipeline that has reached some important stage in your sales process? (Atrium “Stage Reached - Opps Sourced By”)
- Which AEs have sourced the most opps / pipeline / bookings?
All of these questions rely on a crisp association between each opportunity and a human that was responsible for it.
What Happens If You Don’t: By contrast, if you don’t do this, you will be missing out on all of that. If instead of connecting an opportunity to the human responsible for it, you rely just on “lead source” (e.g., “SDR Sourced”), you will know nothing about variation in SDR performance for the opportunities they’re responsible for. If you rely on counting the number of “Events” SDRs create - but don’t associate the SDR to the opp, you will not be able to calculate anything related to the actual value (pipeline, bookings, win rates, etc.) associated with the opps that come from those SDRs.
This is the modern way of modeling “human-centric opportunity attribution”, and doing it otherwise will create problems for your organization.
Marketing Source Attribution
The second major attribution type you want to effective model is the marketing component of where an opportunity came from.
Typically what this means is the use of the “Lead Source” field in a crisp way, with a limited set of options (too many becomes unwieldy), and in more detail in some sort of “campaign” lookup field populated by marketing automation.
The reason to do this is to ensure that if there’s some sort of special way an opportunity needs to be treated based on program participation (e.g., “These people came through this program that sends them XYZ incentive for taking the meeting”), and second, to ask important questions about the business performance of various lead sources and campaigns - like per source opp creation counts, pipeline generation, win rates, average selling price, etc.
That is, similar questions as asked above about the performance of opportunities that come from a specific human or set of humans, but in this case, opportunities that come from a set of lead sources or marketing programs.
Lead Source
Lead sources are the coarsest version of this - generally you’ll want to have a crisp set of these - best practice is a half dozen to a dozen. Typically these will be set by hand as the opportunity is created so having too many will make it difficult for an SDR or AE to choose the right one.
Some examples here might be:
- Demo Request
- SDR Outbound (but important, still with human-level SDR attribution as above).
- AE Self-Sourced (again, with human-level AE attribution as above)
- Events (which event to be broken out at campaign level)
- Former Customer
- Customer Referral
- Existing Customer
- Content Download (which content to be broken out at campaign level)
Campaigns
Campaigns are where things can be much more detailed, as they’re typically populated automatically by a Marketing Automation Platform. If you have solid campaign attribution, you’ll relieve pressure on overloading your lead sources, thereby ensuring good data hygiene there.
Why To Do This: As with human-level attribution, there are a number of important questions you’ll want to be able to answer that can only be done if you have crisp attribution associated with the opportunities your organization works.
For example:
- Which of my lead sources are responsible for what number of opportunities? (Atrium “Opportunities Created” filtered / split by Lead Source or Campaign)
- Which of my lead sources are responsible for what amount of pipeline created? (Atrium “Pipeline Created”)
- Which of my lead sources are responsible for what amount of bookings? (Atrium “Bookings Sourced”)
- Which of my lead sources are most efficient from a win rate perspective? (Atrium “Win Rate”)
- Which of my lead sources are most revenue intensive? (Atrium “Average Selling Price”)
- Which of my lead sources produce the most down funnel pipeline? (Atrium “Pipeline at Stage Reached - Opps Owned By”)
What Happens If You Don’t: If you don’t follow this sort of attribution model, you’re lose out on all of the above. You won’t know which of your lead sources are driving your business best.
Combining Both Attribution Types: Moreover, when you combine human-level attribution with program-level attribution, you can uncover powerful opportunities for performance improvements.
As a couple examples:
- Which of my AEs is best at closing outbound-sourced opps? (Atrium “Win Rate” filtered down to “Outbound” lead source)
- Which of my SDRs struggles at generating outbound opps? (Atrium “Opportunities Created” filtered down to “Outbound” lead source)
Opp “State”
The second major category of opportunity architecture is around the “state of the deal.” That is “in what stage of commercial interaction is this opportunity currently at?”
The primary mechanism by which this is done is the opportunity “stage”, best practices around which we discuss below.
Stages
Stages do most of the work of signifying where a deal “is at.” They are easy for AEs to understand, especially if there are crisp “entry” and “exit” criteria. That is “In order for an opportunity progress into this stage, these criteria need to be met” (entry criteria) or “in order to progress to the next stage, these criteria need to be met” (exit criteria).
Importantly, having good stages (and good hygiene around them) allows your AEs not just to know “where things are at”, but also allows for asking very important questions about your business.
This is a fairly standard modern approach to stages:
- Stage 0 - “Meeting Pending” Stage - On the generation of validated, minimally qualified interest (e.g., an SDR or AE generated first meeting), create an opportunity that is in a Stage 0 (or “1”) state. Typically with a low probability - e.g., 1% or something.
- “No Show” Stage - In a situation where the meeting was supposed to happen, but didn’t, progressing to a low-probability no-show stage is useful. A probability of 2% or something.
- “Meeting Held” Stage - In a situation where the meeting is held, progress the opportunity to the “Meeting Held” stage, before progressing to the “true” next stage (e.g., an AE may make a judgement that this opportunity isn’t in a Discovery stage after that first meeting, and instead is now in a commercial conversation stage - and progress the stage to that after).
- “Discovery” Stage - A stage that indicates that “fit” is being assessed - does the prospect actually have the need the software solves? Do they recognize that?
- “Trial” Stage - In a situation where there’s some sort of trial / pilot in your sales motion, modeling that as stage is particularly key. By doing so, you immediately get the benefit of counting the number of opportunities make it to this stage, the value of pipeline that gets to that stage, the win rate out of that stage, the time in that stage, and so on. Very powerful.
- “Recommend / Proposal / Business Case etc.” Stage - A stage where there’s mutual agreement on the value to be had from the solution at a given prospect, but a need to gain further buy in from other stakeholders or align on the specific package that should be initially deployed.
- “Negotiate / Trade” Stage - Once agreement has been made on the package to be pursued, typically a stage focused on thrashing out the commercials associated with the package will be next.
- “Contracting” Stage - This is the point which there has been stakeholder and budgetary signoff, and now a paper process is being engaged in. This can also include when a contract has been sent - but often that is broken out to its own stage (“Contract Sent”).
Why To Do This: Like with crisp attribution (both human-level and program-level), crisp stage articulation presents a number of powerful opportunities for a modern sales motion. Not just strong comprehension of “where is this deal and what has to happen next?” but also the analysis of the efficacy of a sales motion - by rep, by team, and over time.
For example:
- How many opportunities have reached “Meeting Held” over time? (Atrium “Stage Reached - Opp Owned By”)
- How many trials have we started each month? By rep? (Atrium “Stage Reached - Opp Owned By”)
- Which SDRs are most effective at generating trials? (Atrium “Stage Reached - Opp Sourced By”)
- How effective are we at getting deals out of Discovery to the next step? By rep? Over time? (Atrium “Opportunity Conversion - Conversion From Stage”)
- How many proposals have we sent each month? By rep? (Atrium “Stage Reached - Opp Owned By”)
- How many No Shows do we have each month? (Atrium “Stage Reached - Opp Owned By”)
- What is our win rate out of Proposal? By rep? Over time? (Atrium “Opportunity Conversion - Win Rate from Stage”)
- What is our win rate out of Trial? By rep? Over time? (Atrium “Opportunity Conversion - Win Rate from Stage”)
- What is our time in stage for trials? Which reps are faster than others? Is this changing over time? (Atrium “Time in Stage”)
- How long does it take a deal to close from Proposal? From Trial? Which reps are faster than others? Is this changing over time? (Atrium “Time from Stage to Won”)
What Happens If You Don’t Do This: If you don’t adopt appropriately descriptive stages which include the major junctures of your sales motion, you’ll miss out on a substantial opportunity to better instrument and understand your sales motion - across the organization, various teams, and at a rep-level.
Some typical anti-patterns to watch out for:
- “We don’t create opps until they’re validated”: When you do this, you run the risk of losing track of non-converted opps. Moreover, you lose all manner of no-show, show (but not qualified), and other metrics. Create opps early - and just put them in the right (Stage 0) stage.
- “We don’t want to hurt our win rates so we delay opp creation.”: Calculate win rate out of a sales accepted stage.
- “We model trials as a separate thing than a stage.” (Task, Custom Object): This is fine - but you should still have a stage on the opp that signifies this. Otherwise you’re creating problems for things like calculating win rates from opps that have had trials (in aggregate, per rep), conversion rates for opps that have gone to trial, time in stage, etc.
Forecast Category
Beyond "stage", some organizations use another field to indicate the confidence a rep has in a given opportunity's propensity to close on a specified close date.
That is, while the "Stage" of an opp typically indicates "where" a deal is in its maturity, with strict entry and exit criteria, the forecast category is about the rep's opinion about likelihood of close on a given close date.
Typically "stage" and "forecast category" are loosely correlated, in that the further a deal has progressed, the more confident that a rep will be that it will close by the specified close date.
This isn't 100% guaranteed, though. For example, a deal can be in the "Proposal" stage, but still just be in a "Pipeline" forecast category, as the rep still isn't confident that it's 100% going to close on the specified close date.
These are the rough definitions that most organizations will use:
- Commit: The rep is committing that the deal will close by the specified close date.
- Upside: The rep isn't committing that it will close by the specified close date, but there's an outside change that it might.
- Pipeline: The rep doesn't have confidence as to when or if the deal will close but believes it has a strong change of closing by the specified close date.
- Omit: The rep does not have confidence that the deal will close and when it will close.
Why To Do This: Like with Stages, having this specified will allow you to make judgements about opportunities with better specificity, since you can use "Forecast Category" as a filter on many Atrium metrics.
For example:
- How much pipeline does each AE have in Commit and Upside, scheduled for this quarter? (Atrium "Pipeline by Close Date")
- Which Opps in Commit and Upside don't have a future meeting on the caledar? (Atrium "Opp Health" or "Opportunities Owned")
Opp “Type”
Lastly, using the “Type” field on the opportunity to ensure crisp modeling of the meaning of an opportunity, what sort of sales motion it progresses through, and to make judgements.
Type: Generally, you want an opportunity type for each major category of sales process your organization engages in. The simplest version of this might be “New Business” for net new customers, “Renewal” for existing customers, and so on.
This will allow you to report on each opp type owned by a certain seller (e.g., “Let’s look at all your new business opps Proposal, and after.” or “Let’s look at all your expansion opportunities for next quarter.”).
It will also let you analyze and make judgments about each type of sales motion. (e.g., “What’s our win rate on expansion opps over time? Per rep?” or “What’s our deal cycle on expansions? Average Selling Price on expansions?” or “What’s our win rate on renewals?”)
Examples:
- New Business: Pretty standard! These are opportunities to signify a potential new customer acquisition. Typically owned by account executives pursuing them.
- Expansion / Add On: Some organizations have off-cycle purchases for a given customer, especially common with “land and expand” motions. An “Expansion” opp type can accommodate this. These can also be useful for doubling up with a Renewal, if you want to separately count Expansion / Add On revenue added, separate from the Renewed amount.
- Renewal: These should be owned by AMs or CSMs or whoever is responsible for them. Their close date should be the renewal date on the contract.
- Winback: Churned customers who are potentially coming back again.
Examples
Here are Examples of powerful insights that are enabled based on the above modern architecture (using Atrium - but can also be done via other means).
“What’s our win rate from Trial stage, over time?”
What is our win rate from Trial, per rep? Which reps need help?
“How many trials did we start overall, over time?”
“How many Proposals have we sent, over time?”
“How much pipeline reached “Proposal” over time?”