Thursday 11 April 2024

Plugin for Identifying and Bulk Deleting Orphaned Properties in Optimizely

I am aware that the Optimizely World community has extensively discussed this topic, with numerous solutions and code snippets available to help administrators address this issue. Despite this wealth of resources, I've noticed a lack of a dedicated NuGet package specifically aimed at tackling this problem, especially for CMS 12 on the Optimizely NuGet feed. Here's my perspective on the issue and my contribution: an administrative plugin for Optimizely CMS 12.


Modifying or deleting a property name in the content types' base class triggers an automatic removal of those properties from page instances, provided they hold no data. However, if these properties contain data, they are labelled as "missing," any existing data linked to them remains until manually deleted.

These properties will be visible to editors in content types. Administrators are required to individually visit each content type in admin mode to either remove these properties or keep them. This repetitive process is not only tedious but also prone to oversight.

Unfortunately, the admin mode currently falls short of providing a straightforward method to view all missing properties collectively and offers no simple option to delete them, which could greatly streamline management and maintenance tasks.

Recognizing the need for a more efficient approach, the new Optimizely CMS plugin has been developed to bridge this gap. This plugin enables administrators to:

Identify Orphaned or Missing Properties (missing from code): Quickly locate properties that are no longer defined in the code but still exist in the CMS due to their data content.

Bulk Delete with Precision: Safely remove these orphaned properties en masse, significantly reducing the time and potential for oversight compared to manual deletion.

Installation: Quick and Easy

Get started by simply running dotnet add package A2Z.OrphanedProperties in your Optimizely project.


To access the add-on, go to Admin -> Orphaned Properties

Orphaned Properties

You can access comprehensive documentation for A2Z.OrphanedProperties on its GitHub repository at

About the Author

Adnan Zameer, Lead Developer at Optimizley UK, is a certified Microsoft professional, specializing in web app architecture. His expertise includes Optimizley CMS and Azure, showcasing proficiency in crafting robust and efficient solutions.


Post a Comment