Overview of Demandbase
Demandbase is a cutting-edge Account-Based Marketing (ABM) platform designed to make marketing and sales more effective for B2B companies. By tapping into artificial intelligence capabilities, Demandbase identifies high-potential target accounts, delivers personalized experiences, and measures the impact of marketing efforts. This results in an improved alignment between marketing and sales, increased conversion rates, and accelerated revenue growth.
Ceros Personalization Plugin with Demandbase
The Ceros Personalization Plugin with Demandbase allows you to modify certain parts of an experience based on third-party data.
Currently, the supported providers are Demandbase and 6sense. Both work similarly in that they have an API that can be called and the API responds with data about the visitor based on their IP address. Both companies have vast amounts of data purchased from advertising companies and other websites and have algorithms that attempt to turn an IP address into firmographic data - data about the company. Sometimes it works scarily well, other times it doesn't. For the times it doesn't we recommend creating default or backup elements that work for the general population.
The personalization plugin allows you to create a single dynamic experience that populates personalized information based on various segments in Demandbase so each viewer receives an experience that's highly targeted to that individual.
For example, you could create one campaign landing page but the CTA button would automatically change based on the viewer's buying intent level, or images would change based on industry, or their company name would load in the header, or their job title would automatically appear in text. It is highly customizable but these examples give you an idea of what's possible
Note: all text elements can be dynamically pulled in from Demandbase but Studio elements such as images, CTA buttons, links, embedded objects, etc will need to exist in the Studio for them to be shown dynamically.
Benefits of Integration
Enhanced Personalization:Â The integration allows experiences to be tailored to the visitor, creating a more engaging and personalized user experience.
Increased Conversion Rates:Â By personalizing experiences based on firmographic data, there's a higher likelihood of visitor conversion.
Better Sales Predictions:Â With Demandbase's predictive sales capabilities, you can better forecast sales outcomes.
Setup Process to use the Ceros Personalization Plugin with Demandbase
1. Identify the parts of your experience that will be customized
Here is a list of all the firmographic data available in Demandbase to help inspire your personalization options
There are two options for what can be personalized in the Studio with limitless applications:
personalization-text
Used to insert dynamic text within a textbox. You’ll define the parameters directly in the textbox.
Ex 1: insert a company’s name throughout the experience
Ex 2: insert the name of the city an organization is located in
Ex 3: insert the job function or title of a viewer into an experience using custom segments
personalization-layer
Used to show/hide different layers based on a given data point in Demandbase.Â
Ex 1: show a carousel of logos that is most relevant to a given industry
Ex 2: show customized CTAs based on the user's buying stage or account stage
Ex 3: link to relevant videos or case studies based on specific custom segments
Note: It is ALWAYS smart to include default options in case the viewer has not been captured by Demandbase. More on this later.
2. Install the JavaScript snippet
In the Custom HTML of your experience located within the Settings panel, copy and paste the code below and update the code with your instance’s auth token. Demandbase can help you get your account set up with an auth token specific for experiences.
<script>
var settings = {
demandbase: {
authToken: "INSERT_TOKEN_HERE",
ceros-personalization-plugin 2
dataOverride: {
employee_range: "Small",
// employee_range: "Mid-Market",
// employee_range: "Enterprise",
// company_name: "Ceros",
company_name: "Google",
// company_name: "Random",
hq: {
// industry: "Manufacturing",
industry: "Software & Technology",
// industry: "Retail & Distribution",
},
},
},
}
require.config({
paths: {
"CerosSDK": "<https://sdk.ceros.com/standalone-playe
r-sdk-v5.min>",
"cerosPersonalizationPlugin": "<https://creative-ser
vices.ceros.com/ceros/personalization-plugin/latest/ceros-
personalization-plugin.min>"
},
});
require(["CerosSDK", "cerosPersonalizationPlugin"], func
tion (CerosSDK, cerosPersonalizationPlugin) {
cerosPersonalizationPlugin.init(CerosSDK, settings)
});
</script>
3. Create personalizations in experience using the SDK
Navigate to the experience in the Studio. There are two different types of personalizations you can create.
Note: Always add a default or backup option just in case the viewer has not been captured by Demandbase. If you do not, the experience will break.
Layer Swap Personalization
In this personalization, there's a parent folder with multiple folder layers inside it. This allows you to show different layers in an experience based on the value of a variable. This works best for images, CTA links, videos, and other studio elements that are not text-based.
In this example, we're showing image1, image2, or image3 based on the variable industry
from the data provider. So, if they're in the Agriculture industry, they'll see image 2. If Biotech, image3. If they aren't in any of the industries listed, they'll see the default, which is image 1.
To create a layer swap personalization, you will follow the below SDK tagging structure:Â
1) Parent folder (SDK tag: 'personalization-layer', SDK payload: 'industry')
Folder 1 containing image 1 of people shaking hands (SDK payload: 'default')
Folder 2 containing image 2 of a farm (SDK payload: 'Agriculture')
Folder 3 containing image 3 of a microscope (SDK payload: 'Biotech')
See that the parent folder has the SDK tag personalization-layer
+ the variable name as the payload, while the containing folders only have the specific industry name as listed in the data provider as the SDK payload.
Textbox Personalization
In this personalization, you insert a special variable notation inside of a normal Studio textbox and the plugin will dynamically insert content into your experience. Textbox personalizations, do not require you to have existing text boxes in the studio, in this instance, Demandbase will insert text directly into the experience.
First, find the textbox you want to personalize and add the personalization-text
SDK tag to it. Second, create your variable notation.
In the below example, the plugin will fetch the variable company.name
from the data provider. If it exists, then the value in text
is displayed with the variable. If the variable doesn't exist, the default value is displayed. So, if the data provider knows that I work at Ceros, the textbox will display "Hello Ceros employee!". If not, it will display "Hello visitor!".
```[variable:"company.name" text:"Hello {var} employee!" default:"Hello visitor!"]Â ```
The other (optional) parameter that you can include is if_equals
. This is helpful if you only want to display text if a variable matches a single value. Here's an example:
```[variable:"company.name" if_equals:"Ceros" text:"Hey friend!" default:"Hello visitor!"]```
In the example above, if the variable company.name
exists and it equals "Ceros", then the text "Hey friend!" will be displayed. If it doesn't exist or the visitor works for a different company, it will display "Hello visitor!".
4. Configure sample data for testingÂ
In the snippets in the above code from step 2, notice the dataOverride
field. Because the data coming from the provider is based on your IP address, it can be difficult to tell whether the personalizations in the experience are set up correctly. The dataOverride field, as the name would suggest, overrides the data from the provider.
If you're just experimenting with the plugin, try creating a few personalizations with the examples provided (`company.name`, company.industry
, and scores.buying_stage
).
You can include multiple values in the dataOverride field and use //
to comment out the ones you aren't using. Commenting means that the particular line will not take effect. Removing the //
will make it take effect. Note that only one value can be active at a single time.
Best Practice Notes
Create the desktop variant and insert variables into the text before creating the mobile variant to avoid duplicating efforts
Create a standardized set of personalization rules for easy implementation by designersÂ
Use folders NOT groups for personalization layersÂ
Payloads need to be EXACT match to what is listed in DemandbaseÂ
If you expect textbox personalizations to be longer than the variable notation inside of the Studio, make sure to size your textbox appropriately so nothing is cut off
Example for reference
Click here to view
Wrapping Up
The integration of Ceros and Demandbase provides B2B companies with a powerful tool to enhance user experiences and drive conversions. With personalized content and predictive sales capabilities, this integration is a game-changer for marketers and sales teams.