I have the following scenario: Contacts will be interacting with pages on the site that will be tagged with topics. By interacting with a page in a topic, they themselves will become tagged with being interested in that topic. A contact can be tagged with more than one topic. The content editors will need to be able to personalize components by targeting contacts who are interested in a certain topic.

I am leaning towards doing this with an xConnect contact facet. It would contain a list of topics that the contact has interacted with.

My question is when to update the facet. Should I be storing in the Tracker.Current.Interaction.CustomValues and then in some way using the convertToXConnectInteraction pipeline? As far as I know, that would only allow me to update the interaction facets, not the contact facets.

Should I make an xConnect client call on every page view that has a topic? Will that be super inefficient?

Should I use the sessionEnd pipeline?

Should I do something else?

Do you advise using something other than a contact facet, to begin with?

1 Answer 1


Sitecore XConnect provides some default collection model to save user data like Personal Information, Email, Address, etc. the complete list you can find in an assembly named Sitecore.XConnect.Collection.Model.dll.

Sometimes as per our business requirement, we need to add some additional information to the collection model with the respective user.

You must update a contact’s facets directly in xConnect using the xConnect Client API and manually update the copy of that facet that exists in the session. The tracker does not lock contact data, which means that contact with an ongoing session can still be updated by other systems. Holding a facet in session and submitting that facet to xConnect on session end could result in a conflict if a more recent version of that facet is available.

To create custom contact facet please follow below links:

Create Custom Facet Model in Sitecore 9

To play with that custom contact facet refer this link:

Work with Custom Facet in Sitecore 9

For more Sitecore official document please refer:



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.