Knowledgebase

Sort by:
Issue Why is there a difference between the Exhausted Count displayed in an Engagement Program Stream vs. a smart list using the "member of engagement program stream is exhausted" filter? Solution To account for the difference in a smart list that is displaying a different number of people that have exhausted the content in a stream, in the smart list account for the other conditions the Exhausted Count uses: Engagement Program Cadence of "normal" - this can be included as a constraint on the "Member of Engagement Program" smart list filter The members were not blocked - this can be included in the smart list by using the smart list filters: member of smart list is not blocklisted, unsubscribed = false, marketing suspended = false, email address is not empty and/or email invalid is false. Have not exceeded the communication limit at the last nurture cast - there is no specific smart list filter for this, so it will need to be manually checked in a lead's activity log. Root Cause The Exhausted Count represents the latest exhausted number after the last run/cast. It has other conditions like the nurture cadence of a member should be "Normal", and the member was not blocked or have not exceeded the communication limit at the last nurture cast. If the smart list is configured as follows, then it will display a different number as it does not account for the engagement program cadence of 'Normal' and if a member is not blocked and has not exceeded the communication limit at the last nurture cast. #1: Member of Engagement Program is any Exhausted Content is true Program is [Program Name] Stream is [Stream Name] Environment Engagement Program Exhausted Content Smart List
View full article
Summary Marketo-only records must be manually synced, become a member of a default-program, encounter a Salesforce flow step in order to sync with Salesforce. Issue Records are in the Marketo database but are not syncing over to Salesforce automatically like I thought they would. Solution The sync between Marketo and Salesforce is bi-directional. However, in order for a record to be synced, one of the following conditions must be met: The record becomes a member of a program which is synced to a Salesforce campaign. This occurs when the background sync is used to keep members of a Salesforce campaign in sync with a Marketo Program status. This can easily be verified by navigating to the program and looking at the summary view. More information on this feature can be found here: https://docs.marketo.com/display/public/DOCS/Sync+an+SFDC+Campaign+with+a+Program https://docs.marketo.com/display/public/DOCS/SFDC+Sync%3A+Campaign+Sync The record encounters an SFDC flow step. Any time a record encounters a Salesforce related flow step in a smart campaign, this will cause the record to sync with Salesforce. Some of these flow steps have other implied actions, which you can read about here: https://docs.marketo.com/display/public/DOCS/Implied+Salesforce+Actions The record is manually synced to Salesforce through a single-flow action. This is an intentional user action. It can only occur when you find the record in your database or in the people tab of a smart list and select the option from the 'Person Actions' menu. More on how to do this can be found in this document: https://docs.marketo.com/display/public/DOCS/Run+a+Single+Flow+Step+from+a+Smart+List Root Cause Records had not encountered SFDC flow steps, become members of a program synced with a Salesforce campaign and hat not been manually synced to Salesforce. Environment Marketo with the built-in integration with Salesforce
View full article
Marketo has the ability to see and pull data from Salesforce Formula fields, there is however a catch which will be explained in this article.   Everytime the Marketo Sync connects to Salesforce, it will scan records and look at the " SytemModStamp " (salesforce system field) for each one of them. It will compare this value with the stored value, which was pulled at the last scheduled sync. If the values match, Marketo will move on to the next record. If the values are different (new value later date than previous value) , then Marketo will do a compare and contrast of all fields on that record in both systems and update the information as needed.   When a normal non-formula field is updated and changed on a Lead/Contact record in SFDC, the SytemModStamp value is updated. This is how on next sync Marketo knows to do a compare/contrast check and pull updates. Formula fields do not behave the same way. A formula field is calculated based on data in fields called upon in the formula; this means that the formula field calculation itself will not update the SytemModStamp in Salesforce.   Chances are you already have existing records in SFDC and Marketo. If you were to create a formula field today in your instance of SFDC and have it sync down into Marketo, the data calculated for the formula field in SFDC will not come into Marketo right away. The reason for this is, the formula field has created data based on already existing data, this does not result in a SytemModStamp change.   Typically formula fields will be a calculation of data from fields which are somehow related to the lead/contact record. This means that moving forward, any change in the normal field, will result in a SytemModStamp change as well as a recalculation of the formula field. In this case, Marketo will see the updated SytemModStamp due to the normal field change. Marketo will do the compare/contrast excercise and find that the formula field also needs updating.   If you create a formula field in SFDC and would like to have all the historical data for the formula field to come into Marketo, you can force an update on the records in SFDC to update the SytemModStamp. This way, on next sync, Marketo will see the formula data and pull it in. Alternatively, you can simply allow for natural SytemModStamp updates in SFDC to occur which should result in a slow trickle of historical data from SFDC into Marketo for the newly created formula field.   You can only use data from a formula field in Marketo to segment data and filter. If you try to do a change data value, Marketo will accept the change, tries to sync it to Salesforce and fails to update there. Eventually the Salesforce calculated value will come back into Marketo.  
View full article
Issue A landing page is taking a significant time to load. Solution The load time of a landing page is generally due to resources that have a large file size or due to third-party scripts. This can be identified by using tools like https://tools.pingdom.com/ that breaks down the loading time of individual resources and scripts within a landing page. Another way to inspect the loading time of resources and scripts within a landing page is using the network feature of the developer tools in Google Chrome, Firefox, Safari or any other web browser: https://developers.google.com/web/tools/chrome-devtools/network-performance/reference https://developer.mozilla.org/en-US/docs/Tools/Network_Monitor https://developer.apple.com/safari/tools/    
View full article
Issue Sometimes you may get this error when trying to sync a Marketo Program to an SFDC Campaign -  "Not allowed: Salesforce campaign contains incompatible statuses", even though the statuses match in the Marketo program and SFDC campaign.   Solution Check for the statuses in the Marketo program channel and SFDC campaign - you will see the same statuses. This error occurs if there is any case-sensitive error in the statuses. For example, if your Marketo program has the following statuses: Attended, Registered, Unable to Attend and the SFDC campaign has Attended, Registered, Unable to attend. Then you will encounter the above error. You have to change the status in Marketo as "Unable to attend" or change the status in SFDC Campaign as "Unable to Attend"  in order to fix this.    
View full article
Issue Links placed into emails by a token are not being tracked and do  not show successful click activity in the lead/person record.     Solution When Marketo sends emails, you can think of building the email in 2 steps: Marketo searches the email code for "http" or "https" and wraps the tracking code around the URL Marketo inserts the values of {{tokens}} into the email.   If the {{token}} value is http://www.domain.com , that would be expected to not track because of the above 2 steps. After the {{token}} value is inserted, Marketo does not go back to wrap tracking code around http/https. The {{token}} doesn't look like a URL when the system applies the tracking code because the tokens don't pull the values in until the next step after. The solution to tracking tokens is to place http:// or https:// on the outside of the token, like such: http:// {{token}} That way, when Marketo builds the email, in step #1, the system recognizes the http and knows it's a URL. Then the tracking is wrapped around the http and the {{token}} as well. Then in step #2, the {{token}} value is inserted into an already-wrapped link. Keep in mind is that if the {{token}} value contains http, but http is on the outside of the {{token}}, the link will break. Let's say the URL you want to insert is http://www.domain.com . You have to move the http:// out in front of the {{token}}, but you don't want to also have it inside the {{token}} as well or your link ends up being http://http://www.domain.com. To get around this, you'll need to remember to take the http:// out of the {{token}} value. {{http://www.domain.com}} would instead be http://{{www.domain.com}}
View full article
Issue You receive the "Subject is empty" error when attempting to approve an email which contains an emoji character in the subject line, and elsewhere in the email, emojis may fail to render. Solution Marketo can render any Unicode character up to 5.2 and any ASCII character, but this does not encompass emojis. The Marketo email editor will strip out any unsupported symbols. This is because we cannot guarantee the consistency of their appearance across platforms, as not all clients can render all emoji. Marketo only supports the text symbols that are generally then converted into emoji's by the recipient client or operating system. The basic symbols in a list such as https://www.copypastecharacter.com/symbols should work, as they are ASCII characters and not reliant on extra encoding. These are a set of accepted text symbols that will universally work on all clients and many will convert them to emoji. Just highlight the symbol from  https://www.copypastecharacter.com/symbols, copy and paste it into your email. Alternately, you can work around this by q-encoding the emoji in UTF-8 format, which will render a string of code to add to your subject line. This code tells the email client to render the desired emoji. All you need to do is copy your desired emoji and run it through a Unicode to UTF-8 translation tool, such as https://tools.bluestatedigital.com/kb/subject-line-assistant. As an example, say you want to send a Happy Birthday email to a lead. You could copy the  (birthday cake) emoji and run it through a translator to yield the code "=?utf-8?Q?=F0=9F=8E=82?=" Entering this code in your subject line without the quotation marks will render the emoji on the client's end, and render it in the design most compatible with their device/browser. With any email design, it's always important to test before a live send to confirm it appears the way that you expect it to.
View full article
Issue Calls made to the REST API return response code 611 "System Error".   Solution Submit a Customer Support ticket with the following information   The full body of the REST API call including the endpoint being called The full body of the REST API response The date and time that the call was made Customer Support will work to diagnose the root cause of the error and the reason a more identifiable error code is not being returned instead.        
View full article
1. Navigate to  https://status.adobe.com     2. Click Manage Subscriptions                               3. Sign in using your Adobe credentials or click Create an Account to log in                                       4. Select Experience Cloud drop-down                               5. Select Adobe Marketo Engage                                       6. Select a business service(s)                                     Prior to selecting a regional location(s), you will want to identify what data center and pod/server your instance is located in. Yo u can deduce this information by looking at the URL of your instance. The CNAME = the pod or server your instance is on.         The example above indicates that this instance is in our Ashburn data center on pod A. This user would select the regional location Marketo Ashburn, and then pod ABA, as shown below.    The abbreviations for all of our data centers are as follows:  ab = Ashburn  sj = San Jose  sn = Sydney  lon = London    NOTE: This method can also be used to identify what Real Time Personalization (RTP) pod/server your instance is in.    7. Select regional location(s) and event type(s)                             8. Select the environment(s) you would like to subscribe to and click Continue                                     9. Review your subscription preferences and click Done  
View full article
Issue Issue Description Even though the Success Path Analyzer and the RCE report may be looking at the same thing (e.g the conversions from one stage to another), the numbers in Success Path Analyzer and RCE Conversion Ratio will not match. Solution Issue Resolution Success Path Analyzer is telling you that records are flowing from one stage to another, for example a record moving from Cold List to MQL, the conversion rate will display the rate from this stage to the next stage. If you look at the RCE Conversion Ratio, this is not tracking just the conversion from the first stage on the Success Path Analyzer to the second but instead this tracks all the conversions from this stage to another (eg. Cold List to MQL, Cold List to Attempting). Thus resulting in a much higher conversion percentage as the RCE is not bound to the green path from the Success Path Analyzer. Who This Solution Applies To Customers using RCE, Customers using Success Path Analyzer
View full article
Issue When trying to create a new Engagement Program, you get an error stating that your instance has reached maximum number of active engagement programs.     Solution Due to engineering constraints and as well as to have better user experience, we have limited the total number of active Engagement Programs to 100. So you can create as many Engagement Programs as you want, but when you try to activate more than 100, you will get an error message that says “You have reached 100 Active Engagement Programs. Please deactivate some of your existing Engagement Programs to activate this program." The easiest way to see all your Engagement Programs is to use the filter on the navigation tree.  Click the filter icon and select Engagement Programs from the list. This will allow you to see which Engagement Programs are no longer needed so that you can deactivate them to make room for more.
View full article
Issue You want to use Slack with webhooks to be able to customize the integration a bit more than using it as a Launchpoint service. Solution We will assume you have already created your App within the Slack API page  we will cover everything after that here. 1) Make sure you are logged in so you can access your App through the Slack API page. 2) Select your App: 3) From here you will want to select the "Incoming Webhooks" from underneath "Features": 4) Use the on/off toggle to the right of the title "Activate Incoming Webhooks"   5) Select the "Add New Webhook to Workspace" button to create a new URL that we will use for our webhook within Marketo: 6) Select where you want to post, either at a specific user or channel:   7) Now we are directed back to the page we were one, hit the copy button next to the Webhook URL to copy the URL as we will need it for a later step. 😎 Login to your Marketo instance and navigate to the Admin section. 9) Select Webhooks 10) Select Create Webhook. For the following fields assign the appropriate values: Webhook Name*        =        What ever you want to name Description                 =        A description of what the webhook is used for URL*                           =        Here is where we paste the URL we copied before Request Type*            =        POST Template                     =       This is the information you want to send to your slack channel/user It should in the following format:                                              payload={"text": "DEVELOPER SITE ALERT: {{lead.First Name:default=edit me}} {{lead.Company:default=edit me}},                                                            {{lead.Email Address:default=no email address}}" } Request Encoding Token     =  None (You can change this if you want) Response Type                    =  None 11) Click create and now we are ready to call our webhook and send necessary data to our users in Slack!  
View full article
Issue When using Email Insights or other email tracking in Marketo, the device metrics do not always show the proper device that was used to open the email. Marketo tracks opens of emails thru a single pixel on the email that when images are loaded it tracks it as an opened email. However your stats don't always show the proper information or client.     Solution Due to the way the pixel is tracked it pulls Email Client version data much in the same way as a web browser obtains what browser visited. The "User Agent" as it is called is a widely adopted standard that email clients use to ID themselves. These strings/ID's are determined by the developer of the Email client. Some email clients have the same string for different operating systems (Gmail for Example). Due to the user agent string, some situations may not always give accurate stats on the device or provider. Inaccurate data is less common with most major email apps and programs. The accuracy of data on some mobile platforms can be harder to differentiate due to the limited user agent data provided by the Email Application program.
View full article
Issue If your IT department or a client asks for your Marketo dedicated sending IP address in order to whitelist your marketing emails, here is how you can find it.     Solution Your Marketo instance's dedicated IP address can be found by sending yourself a live version of one of your Marketo emails, then checking the message headers for the IP address that it was sent from.  It should also be included in the original documentation that Marketo's deliverability team would have provided you when the dedicated IP was set up.  If you are unable to locate the IP address in the emails, or are unable to find your original documentation, please reach out to Marketo Support and we can look it up for you.   Who This Solution Applies To Customers with a dedicated sending IP
View full article
Issue Description You have a record in Marketo that is a Contact in SFDC, and the record fails to sync with the error " INSUFFICIENT_ACCESS_OR_READONLY: insufficient access rights on object id." Issue Resolution This error can occur if the Record Type ID field is not updated in Marketo when the SFDC Lead is converted to a Contact.  If the Record Type ID value displayed in Marketo is not valid for Contacts, the sync will fail with the error, " INSUFFICIENT_ACCESS_OR_READONLY: insufficient access rights on object id ." To resolve this, you can update the Record Type ID in Marketo with the correct value from Salesforce, or you can delete the value from Marketo and allow the sync to write the correct value from Salesforce.
View full article
Issue You already have a Marketo connected to an instance of Salesforce and want to switch to a different instance of SFDC.     Solution This is not possible. Once you have connected your Marketo instance to an instance of SFDC, that connection cannot be changed. If you want to connect Marketo to a different instance of SFDC, you would need to contact your Customer Success Manager to have a new Marketo instance provisioned.        
View full article
Issue Description You want to know how long changing a segment takes. Issue Resolution Segment changes are treated like any other activity that is being queued up and processed to be run. Segment changes have an extremely low priority and can sit in the queue waiting for other activities to finish, so you should wait for some time after making the change before you reference the segment elsewhere.
View full article
Issue How to use the Web Page, Referrer URL, or Query String constraints to specify web page when using one form on multiple pages. Solution Use the appropriate constraint to specify which page the form is on when using a "Fills Out Form" trigger or "Filled Out Form" filter in a Smart List. There are three options: Web Page Referrer URL Query String   Web Page This constraint is designed for Marketo Landing Pages. If you have one form on multiple pages, and were attempting to specify a Marketo Landing Page, then you would use Web Page.  If you use Web Page, your value is the Landing Page asset name, such as "Global Contact Form Page". Or if the page is local to a program, the name format would be [program name].[landing page name]   Referrer URL This constraint is designed for external, non-Marketo pages. If the form you have is embedded on an external page, the value you would enter would be the URL of the page. This constraint is very picky about the values entered. Say the form is on http://www.pages.domain.com/contact-us.html . Only the following 2 options would function: Referrer URL - is - http://www.pages.domain.com/contact-us.html Referrer URL - contains - www.pages.domain.com/contact-us   By using "is", the exact value must match. When using "contains" a smaller portion of the whole can be used. Even "contains" /contact-us would have worked successfully, but the less specific the value is the more other pages could qualify depending on the use case. Generally, "contains" is advised with a unique portion of the URL because there can often be querystrings on URLs that would then not satisfy the "is" constraint.   Querystrings If the form is on a page, and the page has a querystring, such as: http://www.pages.domain.com/contact-us.html?product=new-stuff , then the form submission activity on the Marketo record would have a new field in the Detail called Query Parameters. ( Querystring, Query String, Query Parameters are all the same thing.) If you set up direct links to the Page with unique querystrings, then you would be able to use the Querystring constraint and use values from the querystring in the trigger/filter form fillout campaign.
View full article
Issue You try to send a sample of an email and receive a notice that the send sample failed.     Solution There are two token-related reasons that Send Sample may fail: You may have an invalid value for a token in your email. If there is an incorrect token value, the send sample will not work. Example: If you have the token for first name written like this {{lead.FirstName:default=Hello}}, when you try to approve the email Marketo will let you know that the token value is incorrect. The correct token value is  {{lead.First Name:default=Hello}}. For this example if you change the token value to {{lead.First Name:default=Hello}}, Marketo will allow you to approve the email and it will allow you to do a send sample. You may have a token in the From or Reply-To line that is not populating with an email address Example: If you have a token in the Reply-To like this one, {{lead.Email Address:default=edit me}}, then the Send Sample using the default will have "edit me" in the Reply-To, which is not an email address.  Marketo cannot send an email without a Reply-To email address, so the Send Sample will fail.   If any of the above does not apply, run the following tests and provide the information to Marketo Support Clone the email in question and test to send as a sample Create a new email and test to send as a sample Send the email via a live campaign or a single flow step to a test lead
View full article
Issue When data is synced to Marketo from lookup fields in Dynamics, the unique record GUID is put in the Marketo field rather than the name of the referenced record.     Solution In Dynamics, the data stored in lookup fields is actually the unique ID of the referenced record. Since the record that is being referenced is also in Dynamics, the UI is able to display the name of the record rather than its unique ID. However, when the data for those fields is pushed to Marketo, it is still the unique IDs that are synced over, so you will see the long string of letters and numbers in the associated Marketo fields, and not the name of the records. A workaround for this behavior is to: Create custom fields in your CRM for each of the lookup fields that you intend to sync. Create a workflow in Dynamics that populates those fields with the name of the  referenced record, and stores it as a string of text. When those fields custom fields are synced to Marketo, the data will be displayed as the text that you want instead of the unique IDs. Who This Solution Applies To Customers integrated with MS Dynamics
View full article