Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Optimizely Data Platform structure

Optimizely Data Platform (ODP) stores customer data in objects and fields that relate to various events (actions customers take). This data is segregated via different ODP accounts.

ODP data structure

At the core of ODP are Customers.

Every customer has a record of Events that they have performed over time. Every event is classified by an Event Type (such as order, product, email) and Event Action (such as purchase, view, open) and additional metadata stored in Fields (such as, product_id).

ODP considers customers and events Objects similar to a spreadsheet or a database table. Objects consist of Fields to store metadata and information about the data within the object.



The event object has a ts (timestamp) field to store the time at which an event happened and the customer object has an email field to store the last seen email for the customer.

ODP also supports Custom Fields and Custom Objects to customize schema for your business needs (such as a Concert Tickets object).

ODP accounts

ODP segregates data via Accounts and each account has a unique Tracker ID (also referred to as a Public API Key) to separate its data from other ODP client data.



ODP APIs and SDKs use the Tracker ID to determine where to send data.

Common reasons to use multiple ODP accounts include:

  • Multiple brands
  • International stores
  • Business uses multiple e-commerce instances (such as multiple Shopify stores)