Hi RevenueCat team,
I wanted to share an issue we’ve encountered with experiments and get your guidance on it.
Summary
We’re testing A/B experiments with our app and noticed that RevenueCat only seems to treat users as “new” (for experiment enrollment) if their original app user ID is in the $RCAnonymousID:xxxxxx format.
In our setup, we intentionally avoid using anonymous IDs because they cause issues with subscription transfers, generate transfer events we can’t handle, and make it harder to link subscriptions to known user accounts. Instead, we always create new users with explicit original IDs (for example: {appName}_prod.2283035).
Steps to reproduce
1️⃣ Launch the app and configure RevenueCat directly with a custom user ID (e.g., an internal user ID format) as the initial app user ID, without first creating an anonymous user.
2️⃣ Observe that experiment variants are not shown in the current offering as expected.
✅ Note: If you start by using an anonymous user (default behavior) and then log in or merge, the experiment works correctly and variants are shown. The issue only occurs when using a custom user ID from the start.
Expected behavior
Any user with a new original app user ID (whether anonymous or custom) should be considered a new user and be enrolled in experiments.
Impact
We’re currently unable to run experiments without using anonymous IDs, which we intentionally avoid for product reasons. As a result, we’ve paused all experiments until this issue is addressed.
Screenshots
📸 Screenshot 1 — Experiment details
Displays our experiment setup and variant configuration in the RevenueCat dashboard.

📸 Screenshot 2 — New user with anonymous original user ID
Shows that the current offering is successfully overridden by the experiment variant as expected.

📸 Screenshot 3 — New user with custom original user ID
Shows that the current offering fails to display the experiment variant and defaults instead.

Request
Could you confirm if this is expected behavior or if it is a bug?
Additionally, is there any recommended approach or workaround to ensure that new users with custom IDs can be properly included in experiments?
Please let me know if you need additional logs, code snippets, or further details — happy to provide anything needed to help troubleshoot.
Thanks so much for your support! 🙏