Title search:

View Archive

November 29, 2017

Classifying CDPs: Another Try

By David Raab, CDP Institute

I’m still working on the project to clarify differences among CDP vendors.   The latest iteration is based on a functionality map I put together to help non-CDP vendors understand where they fit in the industry.   This was based on the Data, Decisions, Delivery layers I often use to classify components of an over-all marketing stack.  It applies to CDPs because many CDPs extend beyond the Data layer to offer Decision and Delivery functions.   It also highlights that even many Data functions are optional.

The latest version of the map is below.  As you see, it gives each channel (email, Web site, mobile device, etc.) its own set of possible functions for message delivery, content creation, optimization, and connectors.  This makes sense because those functions usually channel-specific.   I’ve cheated a bit by putting all channel-specific functions on the Delivery layer, including a few such as content creation and prebuilt connectors that I usually consider part of the Decision or Data layers.  It’s just easier to understand the results when all functions related to each channel are presented together.

The remaining Decision and Data functions are not channel-specific.  I’ve grouped them into broad categories (campaigns, analytics, ingestion, storage, etc.) and then listed specific capabilities for each category.  This is a departure from the approach I described in my last post on this topic, which aligned all types of functions with specific channels.  At the time, I noted that only about half of all the functions I listed actually did apply to a particular channel, even when I allowed pseudo-channels including un- and semi-structured data, real time processing, and B2B marketing.  In reality, there’s fairly little connection between the items on different rows, so I don’t think we lose much clarity dropping the channel-based organization for decision and data layers.

Marketing System Capabilities
execute email web mobile mail call center social ads display ads search ads POS
optimize email web mobile mail call center social ads display ads search ads POS
create content email web mobile mail call center social ads display ads search ads POS
message connectors email web mobile mail call center social ads display ads search ads POS
audience connectors email web mobile mail call center social ads display ads search ads POS
ingestion connectors email web mobile mail call center social ads display ads search ads POS
access connectors email web mobile mail call center social ads display ads search ads POS
campaigns no-code interface multi-step multi-channel journey framework schedule based trigger based real time interact rules select messages scores in rules
analytics segment BI/ explore ideal customer manual models automated models recommend products incremental attribution  
content no-code templates store workflow cross-channel dynamic content auto-test/ optimize auto-classify (NLP, video)  
admin budgets project mgmt marketing plans simulate results optimal spend by channel  
ingestion structured semi- & un- structured no-code set-up high volume batch real time stream API find deltas
storage raw detail multi-table data model auto-add attributes manage PII in-memory dynamic scaling industry data models B2B data model read external
identity stitch offline match cross device match identify devices persistent ID lead to account anonymous to known golden record  
enrichment location intent personal postal B2B data feature extraction external device graph external ID graph  
access extract API SQL/HQL analytical data sets prebuilt connectors  

What I like about the map is exactly that it encompasses all marketing functions, not just what’s done by a CDP.  This lets it accommodate any function built into any CDP, now or in the future.   This, in turn, lets us identify sets of functions needed to meet particular requirements.  For example, the shaded boxes on the map I’ve published here are the minimum functions required to qualify as a CDP.  Other collections might define functions that are common or support specific use cases such as online-only marketing or journey orchestration.  But I’m getting ahead of myself.

The other big departure that this map makes from my last effort was the boxes contain general functions (“offline match”) , not specific technical features (“name/address standardization, postal address verification, similarity matching”).  In some cases, additional technical criteria are probably needed to clarify what would or wouldn’t qualify as having that feature.  Those could easily be appended to this map.  But in many cases, the general function description is specific enough that it should be fairly clear whether or not a particular system qualifies.  To help things along, I’ve added another version of the table below that gives more specific definitions for each box.  I still wouldn’t necessarily ask vendors to decide for themselves whether they qualify for a particular box, but I think these are specific enough to make it pretty easy for an objective observer to make that judgement and get the vendors to accept it. 

Keeping them somewhat general also fits with the broad purpose of this exercise, which is to help marketers understand which systems have the types of functions they need without trying to provide the details of how each system performs those functions.  That more detailed analysis is something that marketers need to do for themselves based on direct interaction with the vendors.  In other words, we’re only helping marketers exclude the clearly irrelevant products, not create a short list of the best systems for their purpose.

Delivery (by channel)
execute send complete messages and audiences in the specified channel (email transfer agent, Web CMS, mobile app, mailing list generation, Adwords bid, programmatic display ad bid, retail POS)
optimize automatically run tests and pick winning message (a/b or multi variant copy testing; possibly find best message per segment)
create content the system provides tools to create content in the specified channel
message connectors prebuilt API or SDK connectors to send message components to specified channel systems (templates & personalization variables inc. customer IDs; no configuration needed beyond providing credentials)
- Web ability to personalize anonymous users based on device, campaign, referrer, location, weather, behavior, etc.)
audience connectors prebuilt API or SDK connectors to send campaign audiences to specified systems (email lists, next best offer lists to Web personalization, advertising audiences, etc.)
- display ads ability to continuously update audience segments, to send suppressions lists, to cookie synch with DMP/DSP; DMP functions
- social ads ability to continuously update audience segments, to send suppressions lists
ingestion connectors prebuilt API or SDK connectors to ingest data from specified systems (e.g. MailChimp, Sitecore, Google Analytics, Adwords, Facebook, BlueKai DMP, NCR POS)
- Web Web tag management, own Javascript site tag, capture non-click Web behaviors e.g. time spent, page tags, product categories; extract UTM parameters
- mobile collection of mobile device attributes and location, batch mobile data collection to save battery
access connectors prebuilt API or SDK connectors to expose data to specified systems (e.g. MailChimp, Sitecore, Adwords, BlueKai DMP, NCR POS)
no code interface users can set up marketing campaigns by filling out forms or drawing a flow chart; no writing of code or script
multi-step one campaign can include a sequence of messages over time
multi-channel one campaign can include messages in different channels
journey framework the system can track customers through user-defined journey stages or states; campaigns can be triggered when a customer changes state; state is available to use in campaign rules
schedule based campaigns can be set to execute on a regular schedule e.g. daily, hourly, weekly
trigger based campaigns can be set to execute when a trigger event occurs; triggers may be recognized immediately or at a given interval (e.g. nightly)
real time interact campaigns can react in real time to c