Is is possible to make use of any of the component personalisation rules without xDB being enabled? e.g. to swap / hide a component depending on the current date? I'm not interested in tracking the outcome or any other factors, just alternating the presentation on certain conditions.

  • Do you mean on a solution that HAS xDB license but the database tracking is disabled, or on an xDB-less license? – Mark Cassidy Mar 7 '17 at 14:07
  • 1
    On a solution WITH xDB license, but WITHOUT the database tracking. – Matthew Dresser Mar 7 '17 at 14:10

Yes its actually very simple. You need to set the following settings:

  • Xdb.Enabled set to false
  • Xdb.Tracking.Enabled set to true

That will disable Xdb, but still allow the personalization rules to run on renderings.

Note that this applies to 8.1 and above only. In 8.0 you would have to keep Xdb.Enabled set to true and remove the MongoDb connection strings. It will generate a lot of errors in the logs and is not a supported way of running it. But it does work.

Disabling xDB like this means, you do not need an xDB license.

Reference: Sitecore in CMS Only Mode


Personalization IS possible without xDB – the Sitecore Rules Engine remains functional.

The value of personalization will come from custom-developed rules.

Most of the Sitecore-supplied rules will NOT appear/function The following features experience limitations as noted without xDB: Personalization on historical behavior that is stored in XDB or relies upon tracking will be unavailable. This includes:

• Channel

• Contact

• Tag

• Engagement Value

• Campaign Condition

• Goal Condition

• Keywords

• Pattern

• Visited Page

• Profile

• Visit



To run CMS-only mode, you must set the Xdb.enabled configuration setting to false in the Sitecore.Xdb.config configuration file.

When xDB.enabled is set to false, you do not have any access to the reporting or collection databases. Any functionality that depends on the xDB for data collection is not available and a number of applications in the Sitecore Experience Platform cannot run.


You can implement in-session personalization rules that are compatible with Experience Management, for example, based on IP Geolocation or goals triggered in a session, to provide personalized content to your contacts. You cannot, however, implement personalization rules based on historical data, like outcomes or past goals triggered, because the xDB stores that information.


Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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