With the introduction of the xDB we now have a usable, highly customisable platform for collecting and analysing user behaviour and data. But whilst the functionality exists in the platform, there are still a number of integration points you need to tie into to make your data correctly appear in reports, and to provide content editors with the correct information to make decisions and personalise components.
The first major change is the introduction of the “Contact”. The Contact object replaces and extends the old Visitor in DMS. Data is stored for contacts in facets, and there are a number of pre-defined facets available in the default configuration. For easy reference, all facets are configured in the
Sitecore.Analytics.Model.config file and you can take a look here if you need to remember the name and class of the facet you are trying to work with.
The contact and facet objects are constructed and implemented as such to allow you The good thing about this is the depending on your configuration (on premise or cloud) you are able to create new contact facets for users. However if you’re using xDB cloud, this isn’t possible and you’re stuck with the general detail facets for holding user details.
Every interaction with your site has a contact and without assigning any information every contact is labelled anonymous. It’s quite easy to go down the route of collecting every piece of information you can and storing it against the contact, but what is more effective is to create an analytics and personalisation strategy and only collect the information you are going to use. But data collection and aggregation can get a little creepy for users so it’s best to only use your collected information in the way a user would expect it to be used. For instance, if a user completes a contact form on your site they are expecting the information to be used to contact them, not for it to be used to identify them on the site. The exception to this rule is authenticated users since this group does expect their information to be collected. Another point to consider is that you are responsible for the security of the data you are collecting, especially if the information can personally identify a user (which if your are collecting emails already is).
Let’s be frank about it, the least interesting thing you can do with the xDB is identify and display the name of the contact. The power of the xDB comes from the ability to collect information about how a user interacts with your site and the ability to use this information to create a targeted and effective experience for your visitors. Once established and configured the predictive personalisation engine in Sitecore is a powerful way to identify users by behaviour (rather than rules).