Kodeco Forums

Firebase Tutorial: iOS A/B Testing

iOS A/B Testing is an effective way to test user experiences in iOS apps. Learn how Firebase makes it easy to run experiments and review results.

This is a companion discussion topic for the original entry at https://www.raywenderlich.com/215-firebase-tutorial-ios-a-b-testing

First of all, thanks for your wonderful tutorial. I have a question though. Is there any way to figure out if a particular user has been chosen to be included in a particular experiment (in A/B testing, I mean)? I need the variant and experiment name, if it is possible. I know I can define user group and use it in my A/B testing, however I need to extract particular stat from my experiment and it is crucial for me to figure out if a particular user has been chosen to be in an experiment.

Hey, Abbas.

Unfortunately, there’s no easy way for you to find out if a particular user is in a particular experiment. If this is information you think you’ll need a lot in the future, I might suggest creating, like, an experiment_debug variable that consists of a string describing what experiment and variant the user is in, and then having your app display that in an “About this app” or “Support” screen. Then, at least, you could have your user send that information to you. But that’s probably the only suggestion I can think of at the moment.

1 Like

Thanks Todd for the response,
A colleague of mine came up with this solution: we can assign a default value (not in any of the variants) to a variable and if the default value changes after: RemoteConfig.remoteConfig().setDefaults(appDefaults as? [String: NSObject]), it means that this current user has been chosen to be in the experiment. As you know, it is not feasible to test this approach easily due to the scale of our user-base. I’m afraid user selection happens on Firebase side and we don’t have access to that. I couldn’t find anything related to this any where.
Any thought on this approach?
Thanks in advance.

Well, that could work, too, although it’s no different really than just sending over the experiment name and variant explicitly in a separate variable. Either way, though, you’re relying on getting back that information from the client themselves.

You can also get back A/B testing information directly from BigQuery, if you’ve set up your Analytics data to link back to BQ. It’s stored directly as a user property. I guess the question is whether you’re trying to get this information back to run more detailed analysis, or whether this is a custom support kind of issue.

This tutorial is more than six months old so questions are no longer supported at the moment for it. Thank you!