Adobe Marketo Measure (AMM) unifies behavioral and ad data with sales outcomes and machine learning so you can make the right marketing decisions.
Marketing attribution is the process of assigning revenue credit to marketing activities. AMM tracks a prospect's entire customer journey, from their first interaction with GitLab to purchase. The revenue generated from the deal gets attributed back to the marketing Touchpoints that drove the sale (see below for details on Touchpoints). The amount of revenue credit given to a touchpoint depends on how much that Touchpoint influenced the customer's purchasing decision.
This process allows Marketing to understand the value of each marketing activity.
AMM defines a touchpoint as: Touchpoints refer to a prospect/lead's interactions with your online or offline marketing efforts.
Touchpoints capture a multitude of information, such as UTM parameters, the date and time of the interaction, and the type of interaction (form submission, campaign response, etc.). AMM stores Touchpoint records on the lead or contact record in SFDC.
Buyer Touchpoints are created on lead or contact objects directly. They do not relate to an opportunity and do not have a NET ARR value.
AMM creates Buyer Attribution Touchpoints when Sales accepts an opportunity created on an account with Buyer Touchpoints. AMM only creates Buyer Attribution Touchpoints on Contact objects, and they must relate to an opportunity. BATs have a NET ARR value.
|Buyer Touchpoint (BT)||Buyer Attribution Touchpoint (BAT)|
|Relates to the Lead & Contact||Relates to the Contact, Account, and Opportunity Objects|
|Does not relate to the Opportunity Object||Does not relate to the Lead Object|
|Revenue is not associated to a Buyer Touchpoint||Assigned revenue when NET ARR of Opportunity is set|
AMM presents channels and subchannels in dot notation. Where
Paid Search.Google has a channel of
Paid Search and subchannel of
AMM tracks the position of a touchpoint based on its timing to other touchpoints per person. The abbreviations below are shown in the
Touchpoint Position field in SFDC.
GitLab uses AMM's Custom Attribution model based on a unique machine learning algorithm from AMM. The Custom model uses our touchpoint data to calculate attribution weights for each stage based on how much each opportunity stage drove the deal to close.
Adobe Marketo Mesure supports other attribution methods not used by GitLab.
How is the Machine Learning model Calculated?
AMM calculates the importance of each custom stage by using all of GitLab's touchpoint data. The criteria used to determine the importance of each stage are:
Model Percentage = Model Accuracy x Conversion Rate x Touchpoint Uniqueness Weight
The Custom Attribution Model's machine learning algorithm improves as it collects more data but does not automatically adjust stage weights. To ensure GitLab is using the best model, during the first month of the fiscal year, the Marketing Operations team updates the weight of each stage. The previous weights can be seen on this Google Sheet.
Currently the Custom Model has the following weights for each stage (updated April 24th, 2023):
AMM generates Touchpoints as either online or offline based on how they were created.
Online Touchpoints are created when users submit a form on a GitLab web property. They are sourced from traditional online marketing channels, including display advertising, paid search, paid social, organic search, organic social, email, chatbots, etc.
While offline Touchpoints need an SFDC campaign created beforehand to create touchpoints, online Touchpoints do not.
Important: Users must have allowed or not rejected cookies for AMM to create online Touchpoints. GitLab uses OneTrust to manage user consent on our web properties, depending on the user's location they may have to allow cookies for the AMM script to load. If the user rejects or opts out of OneTrust consent, AMM will not create online Touchpoints.
Offline Touchpoints are created from interactions outside the web, including visiting a trade show booth, attending a hospitality event, and being sent a direct mailer. These interactions are for channels where a person's engagement cannot be tracked digitally or where they physically attended an event. A quick rule of thumb: if there is a list uploaded and the person took action, they are offline buyer touchpoints.
Offline buyer touchpoints are created either by:
Enable Bizible Touchpointsfield on the Salesforce Campaign object to either
Include only "Responded" Campaign Membersor
Include All Campaign Members
As of January 2023, we are creating offline Touchpoints through the campaign sync rules. This switch decreases manual setup work for the Marketing Operations Team.
The current campaign sync rules and are largely based on the
Campaign Member Status,
Campaign Name, and
Campaign Member Created Date fields in SFDC.
We have disabled page view tracking in AMM. We found that recording page views into our attribution data skews the data considerably.
Touchpoints are generated one of three ways, on GitLab's Websites, Offline, or through Sales activity. The table below gives examples of how each are sourced.
|Type of Interaction||Example||Touchpoint Generation Method||Mapping Method|
|Offline||Tradeshows; BrightTalk Webcasts (for Attended status TPs), Content syndication partner delivers a list of leads who engaged with your content||CRM Campaign membership by enabling Touchpoint Generation on the campaign Object, by configuring campaign sync rules in AMM, Brighttalk Webcasts via Marketo Programs Integration through Marketo Program Rules||By referencing Campaign Type or the Marketo Program Channel Mapping|
|Sales activity||Outbound call by SDR||CRM Activity (Task or Event) record synced to AMM, through logic on the Activities page in AMM||By referencing the Campaign Name assigned on the Activities page|
AMM has more extensive documentation on how Touchpoints are generated and mapped.
Abode Marketo Measure stores a customizable set of rules for online and offline touchpoints separately. They can be edited through either the Online Channels page or Offline Channels page in AMM.
Important: AMM rule changes can only be made once every 7 days. AMM uses this time to re-process all touchpoint data with the new rules.
The channels and subchannels are mapped based on 5 attributes:
utm_campaignvalue on the session landing page or form URL where form submission occurs.
utm_mediumvalue on the session landing page or form URL where form submission occurs.
utm_sourcevalue on the session landing page or form URL where form submission occurs.
These rules are hierarchical and will operate top-down, so the first rule is checked, then the second, and so on.
Note: Some Online Touchpoints do not fall into a specific rule with a well-defined source. For example, these Touchpoints could be missing a UTM parameter or have no tracking information. These Touchpoints are mapped to either Direct or Other:
|Channel||Subchannel||Campaign||Medium||Source||Landing Page||Referring Website|
|Paid Search||[AdWords Paid Search]|
|Paid Search||Bing||[Bing Paid Search]|
|Paid Search||Yahoo||[Yahoo Paid Search]|
|Paid Search||Other||[Other Paid Search]|
|Paid Social||[Facebook Paid]|
|Paid Social||[LinkedIn Paid]|
|Paid Social||Other||[Other Paid Search]|
|Organic Search||[Google Organic Search]|
|Organic Search||Bing||[Bing Organic Search]|
|Organic Search||Yahoo||[Yahoo Organic Search]|
|Organic Search||Other||[Other Organic Search]|
|Direct||Self Managed Trial||about.gitlab.com/free-trial/self-managed/|
|Web Referral||Any Value|
These channels and subchannels are pulled into Salesforce and can be further filtered by using
medium for those channels with overlap or with
Ad Campaign name to search for specific UTMs or campaigns. The
Bucket Mapping is a high-level grouping of each subchannel set to allow for additional reporting.:
|AMM Channel.SubChannel||Bucket Mapping||Online/Offline||Type of Marketing|
|Content.Content Syndication||Inbound Paid||Offline||White Paper or other content offer that is hosted by a third party.|
|Content.Gated Content||Inbound Paid||Offline||White Paper or other content offer.|
|Content.PF Content||Inbound Free Channels||Online||This campaign type is used to track consumption of specific PathFactory assets.|
|Digital.Inbound Request||Inbound Free Channels||Online||Any type of inbound request that requires follow up.|
|Direct||Inbound Free Channels||Online||Unknown or direct (NOTE: this is not the same as Web direct/self-serve in SFDC, this is a Web referral where the original source was not captured)|
|Display.Google||Inbound Paid||Online||A display ad from Google|
|Display.Other||Inbound Paid||Online||A display ad from an unspecified source|
|Inbound Free Channels||Online||Email driven engagement|
|Event.Conference||Inbound Paid||Offline||Any large event run by Corporate Marketing that we have paid to sponsor, have a booth/presence and are sending representatives from GitLab (example: AWS re:Invent, DevOps Enterprise Summit).|
|Event.Executive Roundtables||Inbound Paid||Offline||This is used for campaigns that can either be organised through a 3rd party vendor or GitLab, covering both in-person and virtual roundtables.|
|Event.Field Event||Inbound Paid||Offline||This is an event run by Field Marketing that we have paid to participate in|
|Event.Owned Event||Inbound Paid||Offline||This is an event that we have created, own registration and arrange speaker/venue|
|Event.Self-Service Virtual Event||Inbound Free Channels||Offline||This is a light weight virtual event that can be hosted on GitLabber's personal zoom.|
|Event.Speaking Session||Inbound Paid||Offline||It is for tracking attendance at our speaking engagements.|
|Event.Sponsored Webcast||Inbound Paid||Offline||This is webcast hosted on an external partner/vendor platform. The|
|Event.Vendor Arranged Meetings||Inbound Paid||Offline||Used for campaigns where a third party vendor is organizing one-to-one meetings with prospect or customer accounts.|
|Event.Virtual Sponsorship||Inbound Paid||Offline||A virtual event that we sponsor and/or participate in that we do not own the registration but will generate a list of attendees, engagement and has on-demand content consumption post-live virtual event. In|
|Event.Webcast||Inbound Free Channels||Offline||Any webcast that is hosted and held by GitLab.|
|Event.Workshop||Inbound Free Channels||Offline||An in-person or virtual workshop where the attendees are guided through an agenda of real life use cases within GitLab.|
|Organic Search.Bing||Inbound Free Channels||Online||Organic Search through Bing|
|Organic Search.Google||Inbound Free Channels||Online||Organic Search through Google|
|Organic Search.Other||Inbound Free Channels||Online||Organic Search through an unspecified search engine|
|Organic Search.Yahoo||Inbound Free Channels||Online||Organic Search through Yahoo search|
|Other.Direct Mail||Inbound Paid||Offline||This is when a package or piece of mail is sent out.|
|Other.Survey||Inbound Paid||Offline||A survey that we or a 3rd party sends out.|
|Paid Search.AdWords||Inbound Paid||Online||Google AdWords Paid Search|
|Paid Search.Bing||Inbound Paid||Online||Bing Paid Search|
|Paid Search.Other||Inbound Paid||Online||Unspecified Paid Search|
|Paid Social.Facebook||Inbound Paid||Online||Facebook Paid Ads|
|Paid Social.LinkedIn||Inbound Paid||Online||LinkedIn Paid Ads|
|Paid Social.Other||Inbound Paid||Online||Unspecified Paid Ads|
|Paid Social.Twitter||Inbound Paid||Online||Twitter Paid Ads|
|Referral.Referral Program||Inbound Paid||Online||This campaign type is used for our third party prospecting vendors or meeting setting services|
|Social.Facebook||Inbound Free Channels||Online||Referral from Facebook|
|Social.LinkedIn||Inbound Free Channels||Online||Referral from LinkedIn|
|Social.Other||Inbound Free Channels||Online||Referral from an unspecified social platform|
|Social.Twitter||Inbound Free Channels||Online||Referral from Twitter|
|Web Referral||Inbound Free Channels||Online||Referral from any site not otherwise defined|
A buyer touchpoint will be created, based on the Content Engagement Time Threshold. If the known user spends the required amount of time on a PathFactory asset, a script in the backend will be executed, pushing the event to AMM.
A touchpoint will only be generated if the user has accepted the
AMM parses the referral URL it receives for:
Similarly to asset views, upon a successfull form submission on a PathFactory asset, a buyer touchpoint will be created.
Downloaded Asset When an asset is downloaded on a PathFactory track, a buyer touchpoint is being generated by the backend script. <!– This diagram is to be used internally and with Pathfactory to understand the attribution touchpoints created through our setup of Pathfactory listening campaigns and how the tracks are used in integrated campaigns and other tactics that drive straight to pathfactory.
These are part of AMM's native and automatic functionality. AMM will for every channel and subchannel, create a generic
[Bizible] campaign within SFDC in order to attribute touchpoints.
But these are not official campaigns, that is why there are no members, but the touchpoints will reference these campaigns for use in reporting and analytics.
Example: Web Direct [Bizible]
Below are some frequently used bizible reports in SFDC and their use cases.
Bizible report type used: Bizible person with Bizible touchpoints (Custom)
Below are step-by-step instructions on how to track registration by driving channel for zoom webcasts, where the registration is set up on about.gitlab or Marketo pages.
Bizible person with Bizible touchpoints (Custom)and click
Show All bizible personsand
Date Field Range is set to All Time.
Form url contains [insert webcast landing page unique identifier](e.g: Form url contains automate-security-ci)
Marketing Channel - Path.
The review of online touchpoints and of the rules governing the creation of touchpoints based on online activities takes place once per month and includes the following checks:
The review of the campaign sync rules, the rules that govern the creation of touchpoints for offline activities takes place once per month and is based on the Adobe Marketo Measure Best Practices for Maintenance. It includes the following checks:
To view all AMM data related updates please visit the marketing changelog spreadsheet. All updates are documented there along with additional information like the date of the update, level of impact and the type of the change.