A user is anyone who can be offered items on any of your channels. We offer two ways to identify users in our API’s:

  • user_id: a user ID is a permanent ID for a user, that can be used to identify the same user across different devices. A common example is a login ID.

  • device_id: a device ID is an ID assigned to a user on a specific device. A device ID should change as little as possible. A common example is a permanent cookie ID tied to the user’s browser, or an app ID.

Every event/recommendation call to Froomle should contain at least a device_id, and as soon the user establishes a more permanent ID, both device_id and user_id. If users can surf your website before establishing a more permanent ID, every device should be assigned a device ID. If users cannot surf your website before establishing a permanent ID, the user_id and device_id can have the same value. If users cannot establish a permanent ID, only the device_id is sufficient. For privacy/GDPR reasons, we do not want any additional information beyond the user_id and device_id. The passed identifier should never contain personally identifiable information, such as a name or an email address.

How we handle devices and users

When serving recommendations for a given user (user_id,device_id or both) we will use all history we have available. We illustrate this with some examples based on the information passed in your recommendation request:

User ID Device ID Effect



Everything that was recorded for this user’s login, as well as everything registered under the device will be used as history to inform the user’s recommendations.



Everything that was recorded on this device will be used as history to inform the user’s recommendation. If a user previously browsed your website on other devices, this will not be taken into account as no user_id was passed.



No recommendations can be made.

Robot users

Users with an exceptional amount of pageviews which are suspected to be bots/robot users are blacklisted by Froomle (user_group: blacklist). This will avoid that our recommendation quality is negatively impacted. However, do note that they will still generate costs due to 'fake' pageviews and recommendation requests.

For users that do not consent to user their data (no-consent for GDPR, cookie policy, or other reasons), we support the following procedure:

  • Recommendation Requests: Request anonymous recommendations, this way we can still provide you with recommendations (typically popular items and/or based on the context item) for these users without you sharing their browsing history. This can be achieved by using the following key-value pairs in the recommendation requests for these users:

    • "device_id":"no-consent",

    • "user_group":"no-consent",

    • "version":"no-consent"

  • User Events: Do not send events for these users.