Building Custom MQA Scoring in Marketo Without TAM

Building Custom MQA Scoring in Marketo Without TAM

A Guide Using Custom Objects and CRM Roll-ups

Marketo’s Target Account Management (TAM) module is a powerful tool for B2B marketers, offering native account-level views and crucial features like aggregating lead scores to derive an Account Score. This is often the foundation for Marketing Qualified Account (MQA) scoring.

However, not every Marketo instance has the TAM module enabled, or perhaps you have unique requirements that necessitate a more tailored approach. If you need to implement MQA scoring by summing the engagement of all leads and contacts within an account but are working outside of the native TAM framework, you’re not alone.

The challenge? Marketo’s core data structure is Person-centric. It doesn’t have a native “Account” object in the same way it has a “Person” object, capable of easily rolling up data from related records without TAM or similar features.

Fear not! If you have access to Marketo Custom Objects or leverage a tightly integrated CRM like Salesforce (SFDC), you can build a custom MQA scoring mechanism. These approaches require more technical setup and ongoing management than using TAM, but they provide the flexibility to design a scoring model precisely to your needs.

Here’s a detailed guide on implementing MQA scoring by aggregating lead scores using two custom methods: Marketo Custom Objects (requiring external automation) and SFDC Roll-up Summary Fields.

1

Method 1: Leveraging Marketo Custom Objects

This approach uses a Custom Object within Marketo to represent the account and relies on external processes to perform the score aggregation.

Phase 1: Setup and Data Structure

Enable and Configure Your Custom Account Object:

  • Ensure the Custom Objects feature is enabled in your Marketo instance (this may require an additional purchase from Adobe).
  • Go to Admin > Marketo Custom Objects.
  • Create a new Custom Object to represent your “Account”. Give it a clear display name (e.g., “Company Account”, “MQA Account”).

Define Essential Fields: Add necessary fields to this Custom Object. At a minimum, you’ll need:

  • A unique identifier field for the account (this should ideally align with your CRM Account ID or another reliable external ID if not CRM-synced). This will likely be a “Dedupe Field”.
  • A field to store the aggregated MQA score (e.g., “Aggregated Lead Score”, “MQA Total Score”). This would be a Numeric field.
  • Other relevant account-level fields you might want to store or display (e.g., Company Name, Industry, Employee Size – these might be synced from your CRM or populated otherwise).

Create a Link Field: You must create a “Link Field” on this Custom Account Object that links it back to the Person object. This field establishes the relationship between individual leads/contacts and their respective accounts represented by this Custom Object. This link will likely be based on the Company Name or a synced Account ID present on both the Person record and the Custom Object record.

Approve the Custom Object and its fields.

Ensure Person Records are Correctly Linked:

  • Every relevant Lead and Contact must be accurately linked to their corresponding Custom Account Object record via the “Link Field”. This typically involves ensuring the linking field on the Person record is populated via your CRM sync and having a process to create/link Custom Account Objects.

Implement Your Lead Scoring Model:

  • Ensure your standard lead scoring model is active on your individual Person records. These are the scores that will be summed.

Phase 2: The Engine – Aggregation Logic

Since Marketo’s flow steps cannot natively perform summations across multiple related records, you need external help.

Set Up the Aggregation Trigger in Marketo:

  • Create a Marketo Smart Campaign triggered by changes to individual lead scores (“Score Changes”, “Data Value Changes” on the score field, or specific activity triggers).
  • The Flow step will be a Webhook configured to send the leadId, accountId (or equivalent linking field value), and potentially the new score to an external service.

Develop or Utilize an External Service:

  • This service (custom code, cloud function, iPaaS) receives webhook data, identifies the account (Custom Object), queries Marketo via API for all linked Person records and their scores, calculates the sum, and uses the Marketo API to update the “Aggregated Lead Score” field on the relevant Custom Account Object record.

Phase 3: Activation – Utilizing the MQA Score

Define Your MQA Criteria:

  • Set a threshold for the “Aggregated Lead Score” field on your Custom Account Object to define an MQA.

Build Smart Lists and Trigger Campaigns:

  • Create Smart Lists filtering People who are linked to a Custom Account Object meeting the MQA score threshold (using the “Member of Custom Object” filter). Use these lists for targeting, alerts, and reporting.

Key Considerations for the Custom Object Method:

  • Technical Complexity: Requires external development for the aggregation service.
  • API Usage: Can consume significant API calls for querying and updating.
  • Near Real-time: Updates are near real-time, dependent on service processing.
2

Method 2: Leveraging Salesforce (SFDC) Roll-up Summary Fields

If your Marketo instance is synced with Salesforce, you can utilize SFDC’s capabilities to perform the aggregation.

Phase 1: Setup and Data Structure

Ensure SFDC Lead/Contact to Account Relationship:

  • Your Salesforce instance must have a defined relationship between Lead/Contact objects and the Account object. The standard Contact-to-Account relationship is a lookup, but Lead-to-Account might require custom configuration or a third-party AppExchange package if you need leads directly linked to accounts before conversion.

Create a Roll-up Summary Field in SFDC:

  • In Salesforce, navigate to the Account object.
  • Create a new Roll-up Summary field on the Account object.
  • Configure this field to SUM the Lead Score field from the related Leads and/or Contacts. You can specify which related list (Leads or Contacts) to roll up from, or potentially combine them depending on your SFDC configuration.
  • Save the Roll-up Summary field. SFDC will automatically calculate this value based on the scores of the related records.

Map the SFDC Roll-up Field to Marketo:

  • Ensure that the standard Marketo-SFDC sync is configured to include this new Roll-up Summary field from the SFDC Account object.
  • This will create a corresponding field in Marketo. The challenge here is where this data lands:
  • Option A (Most Common): The synced Account Roll-up field will likely appear as a field on the Person record in Marketo. This means the account’s aggregated score will be duplicated across all people belonging to that account in Marketo.
  • Option B (If using Custom Objects for Accounts): If you implemented the Custom Object method above, you could potentially sync the SFDC Account Roll-up field to the corresponding Custom Account Object record in Marketo, keeping the score on a single record per account within Marketo.

Phase 2: The Engine – Aggregation Logic

The aggregation logic is handled natively by Salesforce’s roll-up summary feature. No external service or webhook is needed for the calculation itself.

SFDC Calculates Automatically: Salesforce automatically updates the Roll-up Summary field on the Account record whenever a related Lead or Contact record’s score changes or the relationship changes.

Marketo Syncs the Score: Marketo’s standard sync process will pull the updated aggregated score from the SFDC Account record into the corresponding field in Marketo based on your sync schedule.

Phase 3: Activation – Utilizing the MQA Score

Define Your MQA Criteria:

  • Set a threshold for the synced Aggregated Score field in Marketo (the field populated by the SFDC roll-up) to define an MQA.

Build Smart Lists and Trigger Campaigns:

  • Create Smart Lists in Marketo that filter People based on the value of the synced Aggregated Score field (which, as noted, is likely duplicated on each Person record for that account).
  • Use these Smart Lists for MQA-based activities as described in Method 1.

Key Considerations for the SFDC Roll-up Method:

  • CRM Dependency: This method is entirely reliant on your Salesforce configuration and the availability of roll-up summary fields for your specific object relationships.
  • Not Real-time in Marketo: The MQA score in Marketo is only as current as your Marketo-SFDC sync frequency. It’s not instantaneously updated when a lead score changes.
  • Data Duplication (Likely): The aggregated score will typically be duplicated across all Person records belonging to an account in Marketo.
  • Simpler Setup (within SFDC): Configuring the roll-up field in SFDC is generally simpler than building an external aggregation service.
  • Reporting: Account-level reporting is best done within Salesforce using reports on the Account object.

Choosing Your Custom Path

Both the Custom Object/Webhook method and the SFDC Roll-up method offer ways to achieve MQA scoring by summing lead scores without Marketo’s native TAM.

Choose the Custom Object/Webhook method if you require near real-time updates, have complex aggregation logic that goes beyond simple summing, have technical resources for external development, or do not use a CRM (or your CRM lacks robust roll-up capabilities).

Choose the SFDC Roll-up method if you heavily rely on Salesforce as your system of record for accounts, are comfortable with updates being tied to your CRM sync frequency, and have the necessary relationships and permissions in SFDC.

Regardless of the method, clearly defining your MQA criteria and ensuring accurate linking between your Person records and their respective accounts (whether represented by a Marketo Custom Object or an SFDC Account) are fundamental to success.

Ready to Implement Your Custom MQA Strategy?

Our team of Marketo and Salesforce experts can help you design and implement the perfect MQA scoring solution for your specific business needs.