Skip to Main Content
Optimizely CAB Portal
3 VOTE
Status Future consideration
Categories Targeting
Created by Guest
Created on Aug 16, 2023

Update the "Device" audience condition to either work with iPads or accurately reflect that iPads cannot be targeted using the "Device" audience condition.

Issue

As an experiment engineer, I constantly need to explain that even though Optimizely offers an out-of-the-box solution to create audience conditions that would either include or exclude iPads in experiments, creating an audience condition using the "iPad" device option will not actually work (and hasn't worked for years).


Example #1:

Create the audience "Visitor is not using any of these devices: iPad"

  • Expected behavior:

    • Users who are using an iPad should not be eligible to view experiments that are using this audience condition.

  • Actual behavior:

    • Users who are using an iPad are eligible to view experiments using this audience condition because Optimizely's "Device" audience condition is not able to differentiate between an iPad and a MacOS desktop/laptop.

Example #2:

Create the audience "Visitor is using any of these devices: iPad"

  • Expected behavior:

    • Users who are using an iPad are eligible to view experiments that are using this audience condition.

  • Actual behavior:

    • Users who are using an iPad are not eligible to view experiments using this audience condition because Optimizely's "Device" audience condition is not able to differentiate between an iPad and a MacOS desktop/laptop.

I understand that the reason why the "iPad" option in the "Device" audience condition no longer works is because beginning with iPadOS 13, Apple began reporting the iPad's user agent as a MacOS desktop. But without experiencing that the audience condition doesn't actually work for iPads, users are currently led to believe that creating an audience using the "iPad" option in the Device will work.

Proposed solutions

Option 1: Update the "Device" audience type to detect iPads

Optimizely's documentation on audience conditions notes that the open-source JavaScript library, ua-parser-js, is used to determine device types. Based on the link to ua-parser-js provided in the above documentation, I believe that Optimizely is using v0.7.12 of ua-parser-js (which is currently 7 years old) and cannot differentiate between iPads and MacOS desktops/laptops. However, newer versions of ua-parser-js can differentiate between iPads and MacOS desktops/laptops.

Additionally, v2.0 (currently in alpha) provides additional methods (such as withFeatureCheck()) for even better iPad detection using navigator.maxTouchPoints and navigator.standalone in addition to navigator.userAgent.


Option 2: Remove the "iPad" option

Remove the "iPad" device option and—to prevent users from assuming that iPads are included in the "Tablet" device option—add a disclaimer that "iPads" will not be included in the "Tablet" device option and are treated as "Desktop/Laptop" devices by Optimizely.

  • Attach files
  • Admin
    Jett Sy
    Reply
    |
    Oct 23, 2023

    Hi Ryan - thanks for sending in this feedback. I highly appreciate your detailed description of the problem you're facing. This is definitely something we need to address, therefore I'll move this to future consideration and prioritize accordingly.