> ALLIANCE LEAD with {{my.Partner Name}} visited Booth at {{my.event name}} on {{my.event date}}
>
> CHANNEL LEAD with {{my.Partner Name}} visited Booth at {{my.event name}} on {{my.event date}}
For Channel Partner CRM IDs critical to the lead flow, click [here](https://gitlab.my.salesforce.com/00O4M000004aSq6). Alliance Partner CRM IDs can be found [here](https://gitlab.my.salesforce.com/00O8X000008mxIb).
## Channel Campaign Setup Overview
Channel campaigns lead flows from Marketo → SFDC → Impartner via the ["Prospects" tab](/handbook/marketing/marketing-operations/impartner/), including MDF, Joint GitLab and Partner, and Partner Managed campaigns.
@@ -332,13 +325,10 @@ When GitLab and Partners participate in campaigns together including events, web
Use the [campaigns and programs page](/handbook/marketing/marketing-operations/campaigns-and-programs/#marketo-program-and-salesforce-campaign-set-up) to select and clone the appropriate Marketo template. Follow the additional instructions below to ensure data integrity for partner campaign tracking.
Update Marketo tokens `{{My.Partner Name}}` only if using token partner forms. Example: `By registering for this GitLab and {{My.Partner Name}} event....`
#### Online Campaign - Lead Capture via Form/Landing Page
The following instructions is for joint campaign run with one partner, and must be completed prior to launch.
1. Update the Marketo tokens: `{{my.Partner Name}}` with Partner Name.
1. Update `Registration Landing Page` to use `FORM 3146: Partner + GitLab Joint Event with Token`
- To update the page:
- Right click `Registration Landing Page`, edit draft.
@@ -402,7 +392,6 @@ Note that this type of campaign are not generated by MDF.
**Step 1: Setup in Marketo**
1. Clone the Marketo program template: [YYYYMMDD__Partner_Name_Event_Name_Region](https://engage-ab.marketo.com/?munchkinId=194-VVC-221#/classic/PG16629A1)
2. Update the Marketo tokens: `{{my.Partner Name}}` with Partner Name.
@@ -241,6 +241,7 @@ As the email builder, you are responsible for making sure the email is formatted
* Confirm that CTAs are in sentence case: ex: Register now (not Register Now)
* Check the {{my.landingpageURL}} token to confirm that if you are driving to a `page.gitlab.com` address, there is NO `/` at the end of the url. If you are driving to `about.gitlab.com`, there should be a `/` at the end of the url. For example, the token should look like this (with no https://): `about.gitlab.com/sixteen/` or `page.gitlab.com/sixteen`.
* In the email editor, confirm that each link is hard-coded with `https://`. This cannot be in a token because the Marketo tracking [will not work properly](https://web.archive.org/web/20231207132114/https://nation.marketo.com/t5/knowledgebase/how-to-track-tokenized-links-in-email-assets/ta-p/254486). Your links should look like this in the email editor: `https://{{my.LandingpageURL}}?{{my.utm}}`
* When linking to an anchored spot on a page, the UTM must come before the anchor or the link will break. Correct format: `https://{{my.landingpageurl}}?{{my.utm}}#{{my.anchor}}`
* In the editor, click on the text version of the email. The content should have been copied from HTML, but you will need to reformat it. Be sure that after you bring over the copy initially, you uncheck the "Copy from HTML" box. Format the email to use proper spacing between paragraphs and that the date/time information is easy to read.
* In the text version, there should be no links in line with content. Move the links to the end of the paragraph or into separate bullets. You should have a "Register now" link at the top of the email and at the bottom. Confirm the links in the text version are formatted properly (as described above).
* On the text version, you do not need unsubscribe text because Marketo will automatically attach this if it is missing. If it is there, no need to remove it. The exception is if you are using the `Localized email footer` snippet. You do need to make sure this appears in the text version.
@@ -240,20 +240,19 @@ If a field needs to be created in Marketo AND SFDC, it must be created in SFDC f
If you need assistance with Sales Systems follow the next steps:
1. Open an [Sales System issue](https://gitlab.com/gitlab-com/sales-team/field-operations/systems/-/issues/new) in their project and assign the label `entapps-customer::MOPS`.
1. Open an [Sales System issue](https://gitlab.com/gitlab-com/sales-team/field-operations/systems/-/issues/new) in their project and assign the label `ETA Customer::Marketing Ops`.
- If the issue is a part of a committed PMO project, please add the label `MktgSystems-PMO`
2. If Mops member can create a changeset, please do so shortly after creating the issue to decrease time to deploy,
3. Add [prioritization label](/handbook/marketing/marketing-operations/#labeling) of `MktgOpsPrio::00: Requested`
4. Business process owner (Amy or Christine) will review, and if they approve of the request from a business standpoint, they will check the appropriate box and add the `MktgOpsPrio::01: Approved` label. If not, the request will stay in `MktgOpsPrio::00: Requested` status until blockers or outstanding questions are resolved.
5. Once approved, requests will be added to the prioritization queue by the business proess owner to review with Sales Systems or the PMO and labeled `MktgOpsPrio::02: In Queue - Mops`
6. Once Systems or PMO has agreed to take on work, the request will be added to a `Temp` holding milestone for further prioritization, and labeled `MktgOpsPrio::03: In Queue - Systems`
7. Once a milestone is added and the issue is discussed, the label will be updated to `MktgOpsPrio::04: Actioned` by the MktgOps representative that is in the prioritization call.
2. Add [prioritization label](/handbook/marketing/marketing-operations/#labeling) of `MktgOpsPrio::00: Requested`
3. Business process owner (BPO) will review, and if they approve of the request from a business standpoint, they will check the appropriate box and add the `MktgOpsPrio::01: Approved` label. If not, the request will stay in `MktgOpsPrio::00: Requested` status until blockers or outstanding questions are resolved.
4. Once approved, requests will be added to the prioritization queue by the business proess owner to review with Sales Systems or the PMO and labeled `MktgOpsPrio::02: In Queue - Mops`
5. Once Systems assigns, but does not yet add to a milestone, the issue is labeled `MktgOpsPrio::03: In Queue - Systems`
6. Once a milestone is added and the issue is discussed, the label will be updated to `MktgOpsPrio::04: Actioned` by the MktgOps representative that is in the prioritization call.
- Once the label has been updated to `MktgOpsPrio::04: Actioned`, follow along with the Sales Systems labels for next steps.
8. Systems will work on the issue and push any updates to the Staging environment first
9. Once systems build, it is the responsibility of the Business Owner to test and accept. The Business Owner must show proof (such as a testing plan, or screenshot) that the solution is working correctly in the staging environment. This is an important step that represents acceptance of the solution, its testing, and the authority to change the related process. The issue will stay in `MktgOpsPrio:: 05: Business Owner UAT` during this time.
10. Once ready to deploy, Systems manager will add `SFDCReleaseHelp` to flag to release managers it is ready for production release. Marketing Ops label should be updated to `MktgOpsPrio::05: Pending Release`
11. Once in production, MktgOps should confirm again that the field/update in SFDC and corresponding/impacted systems is working as anticipated. Label updated to `MktgOpsPrio::06: Completed`
12. Issue is closed and completed.
7. Systems will work on the issue and push any updates to the Staging environment first
8. Once systems build, it is the responsibility of the Business Owner to test and accept. The Business Owner must show proof (such as a testing plan, or screenshot) that the solution is working correctly in the staging environment. This is an important step that represents acceptance of the solution, its testing, and the authority to change the related process. The issue will stay in `MktgOpsPrio:: 05: Business Owner UAT` during this time.
9. Once ready to deploy, Systems manager will add `entapps-status:: ready to deploy` to flag to release managers it is ready for production release. Marketing Ops label should be updated to `MktgOpsPrio::05: Pending Release`
10. Once in production, MktgOps should confirm again that the field/update in SFDC and corresponding/impacted systems is working as anticipated. Label updated to `MktgOpsPrio::06: Completed`
11. Issue is closed and completed.
**Other helpful links:**
@@ -266,8 +265,7 @@ Workato is a low-code/no-code tool used to for automations and integrations acro
1. Request the creation of a new automation/integration
- For types of request that involve building something from scratch and you require assistence from the Integrations team
1. Open an issue in the [Integrations Work](https://gitlab.com/gitlab-com/business-technology/enterprise-apps/integrations/integrations-work/-/issues/new) and follow the instructions in the issue template.
2. If the issue relates to marketing operations, make sure to tag @mihaiConteanu or @amy.waller
2. If the issue relates to marketing operations, make sure to tag @stran5 or @amy.waller
2. Bug fixing or deploying recipes developed in the testing environment
- For fixing issues with currently working recipes or to test and review an independently built recipe before moving it into production. Due to SOX compliance, any change to a recipe in production needs to be acompanied by a change management issue.
1. Open an issue in the [Integrations Work Project](https://gitlab.com/gitlab-com/business-technology/enterprise-apps/integrations/integrations-work/-/issues/new) and depending on your specific need, choose a template for _Bug_, _Change_, or _Default_ and follow the instructions in the issue template.
@@ -421,6 +419,7 @@ Click to see dropdown list of available status page URLs.
@@ -60,32 +60,15 @@ AMM tracks the position of a touchpoint based on its timing to other touchpoints
### Attribution Models
GitLab uses [AMM's Custom Attribution model](/handbook/marketing/marketing-operations/bizible/#custom-attribution-based-on-bizible-machine-learning-algorithm) 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 Measure (AMM) remains our system of record for **Buyer Touchpoints (BTs)** and **Buyer Attribution Touchpoints (BATs)** and provides several out-of-the-box attribution models (e.g., First Touch, U-Shaped, W-Shaped, Custom). AMM's Custom model still runs in the application, but it is **no longer treated as GitLab’s primary source of truth for marketing pipeline attribution**.
Adobe Marketo Mesure supports [other attribution methods](https://experienceleague.adobe.com/en/docs/marketo-measure/using/introduction-to-marketo-measure/overview-resources/marketo-measure-attribution-models) not used by GitLab.
Today, GitLab's primary pipeline-level attribution is defined in a **GitLab-owned multi-touch attribution model implemented in our Snowflake data warehouse**, not in the AMM Custom model. In this setup:
**How is the Machine Learning model Calculated?**
- AMM supplies the **raw touchpoint data and touchpoint-level model outputs**.
- Our Enterprise Data models (**`fct_crm_attribution_touchpoint` → `mart_crm_attribution_touchpoint`**) apply GitLab's **data-driven weights and time-decay logic** to assign pipeline credit across touchpoints.
- These warehouse models power our FY26+ marketing pipeline metrics, including **Marketing Generated Pipeline (MGP)** and **Marketing Progressed Pipeline (MPP).**
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 Accuracy:** If we build a predictive model with the touchpoint data to predict whether we will win a deal eventually, how accurate will the model be? Higher predictive accuracy means that the details of this stage correlates more with whether a deal will close
-**Conversion Rate:** If Leads or Opportunities at this certain stage convert to the next stage at a high rate, this suggests that the marketing activities that occurred at this stage didn't matter very much. Conversely, if a certain stage converts to the next stage at a low rate, this can suggest that the marketing activities that occurred at this stage were influential in driving the conversion.
-**Touchpoint Uniqueness Weight:** If a stage occurs as a standalone transition, meaning there weren't any other stage transitions that occurred at the same time, this stage could receive a higher attribution weight. Conversely, if a touchpoint for a stage is shared with other stages (e.g. the touchpoint shares the First Touch, Lead Conversion, and Opportunity Conversion stages) this stage could receive a lower attribution weighting.
The final weight for a custom stage is calculated as such:
```text
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](https://docs.google.com/spreadsheets/d/1gE0rLgVjz04kEEaZtw763SLcKlRcq5y4/edit#gid=1524071528).
Currently the Custom Model has the following weights for each stage (updated February 14th, 2025):
-**First Touch** - 34.3%
-**Opportunity Creation** - 16.9%
-**SAO** - 13.4%
-**Closed (Lost, Won)** - 19.4%
-**Middle Touches** - 16%
The full methodology, including how data-driven touchpoint weights and time-decay are combined over a 365-day lookback window, is documented in the [Marketing Analytics handbook page](https://internal.gitlab.com/handbook/marketing/marketing-ops-and-analytics/marketing-analytics/marketing_pipeline_attribution)
@@ -598,8 +598,6 @@ usive ownership. These contacts enter our standard nurturing process, accumulati
-`{{my.email header image url}}` - This is optional. You will need this if you had custom images created.
-`{{my.ondemandurl}}` - This will be entered AFTER the event date. It is the link to the recorded webcast. You will need to come back after the event and update this token.
- Update the utm_campaign field following the process outlined [here](/handbook/marketing/utm-strategy/#the-new-utm_campaign-structure).
-**Partner Campaigns** update the `{{my.partner name}}` used for Last Interesting Moment, and/or Landing Page Form with tokens.
- For live events, be sure to update the `reply email` token. This is used in the confirmation email. You need to add the correct email address for cancellations or special accomodations, and update the subject to something descriptive. Keep the `%20` between each word in the subject so the subject populates correctly.
- If your program qualifies for Action Streams (currently only available for Security), please update the {{my.Action Stream}} token with the relevant type [here](/handbook/marketing/lifecycle-marketing/email-processes-requests/#action-streams). [Video instructions](https://drive.google.com/file/d/1hBuYcScoJGVo8VUhKbiwToSE1g4Kr8Tl/view?usp=sharing) - note the instructions are different for Conferences and our outlined in the Conference instructions below.
### Step 4: Activate Marketo smart campaign(s)
@@ -1420,7 +1418,6 @@ LinkedIn Lead Gen forms can be used to drive event registration without adding a
- {{my.landingpageURL}}
- {{my.utm}} - Fill in the utm_campaign value (leave the rest of the utms as-is). You can use the [UTM Generator](/handbook/marketing/utm-strategy/#how-to-create-utms) to create the campaign UTM.
- {{my.reply email}}
- Partner Campaigns: update the {{my.partner name}} and {{my.CRM Partner ID}}. This is used for Last Interesting Moment and partner lead processing.
- If your program qualifies for Action Streams (currently only available for Security), please update the {{my.Action Stream}} token with the relevant type here.
1. Clone processing campaigns and emails into your program.
- Click on the [template](https://experience.adobe.com/#/@gitlab/so:194-VVC-221/marketo-engage/classic/ME24226A1) and expand the drop-down.