---
title: "Session trait limitations"
slug: "session-trait-limitations"
abstract: "Session traits have limitations to ensure performance and manage costs."
---
# Session trait limitations

To ensure system performance and help manage computation costs, session traits have these limitations:

- Session traits are only calculated for guests identified as [customers](https://doc.sitecore.com/cdp/en/users/sitecore-cdp/data-availability-in-sitecore-cdp/available-data-types/guest-data.html "Guest data").
- Session traits are only calculated for sessions that have a type of *Web* and status *Closed*.

    > [!note]
    > Mobile app sessions also qualify for session trait computation. Although the session may originate from a mobile application, online mobile sessions are internally normalized as `type = Web`, so they are included. This limitation applies only to non‑interactive or outbound session types (such as triggered flows, audience exports, or email sessions).

- A maximum of 10 session traits can be created per tenant, with statuses that can be *[Active, Paused](https://doc.sitecore.com/cdp/en/users/sitecore-cdp/developer-center/session-traits/session-trait-statuses.html "Session trait statuses")*, or a mix of both.
- For guests identified as customers, up to 10 calculated session traits can be stored in their guest profile.
- Session traits are calculated at the end of a customer's session using the following:
    - Events - last 2000 events from the session that triggered the session trait calculation. Any events from previous sessions are excluded.
    - Guest properties
    - Order data - last 40 orders placed by the guest or all orders within the last 90 days
    - Data extensions
    - Segment memberships
- A session trait is calculated only once after a session ends.
- If calculation fails, Sitecore CDP will attempt to retry up to 10 times. If all retries fail, the session trait will be marked as a failure.
- If a session trait has a high failure rate, specifically, if it has 50 failed executions and zero successful executions in the past hour, it will be [automatically paused](https://doc.sitecore.com/cdp/en/users/sitecore-cdp/developer-center/session-traits/troubleshooting-session-traits.html#UUID-2ddbcb87-8d31-1234-a3ca-9b63cfd991de_section-idm234377528294289 "Addressing high failure rates").
- The values contained in session traits cannot be updated manually or modified directly via REST API or BATCH API.
- Each session trait contains exactly one value. The returned value can be a string, number, Boolean, or list of strings, depending on the JavaScript logic, and up to 10 traits can exist at the same time.
- The JSON representation of each value returned by the session trait cannot exceed 10000 characters.