App Tracking Transparency How does effect apps showing ads? - IDFA iOS14 - ios

The recent WWDC state that about iOS 14:
With iOS 14, iPadOS 14, and tvOS 14, you will need to receive the
user’s permission through the AppTrackingTransparency framework to
track them or access their device’s advertising identifier. Tracking
refers to the act of linking user or device data collected from your
app with user or device data collected from other companies’ apps,
websites, or offline properties for targeted advertising or advertising
Reference: User Privacy and Data Use
As per this guidelines, We need to ask the user for tracking permission using ATTrackingManager (AppTrackingTransparency) framework.
I have a few apps on AppStore, Which is using Google AdMob & FBAudienceNetwork to deliver ads to the user.
Question:
What's happen if I don't upgrade these apps as per the last WWDC guidelines? Is app continue ads serving to the user?
What's happening if User doesn't give tracking permission to the app?
App update does make any impact on revenue from ads?
Try to answer this question respected to ads serving, revenue and impact of App Tracking Transparency
Below are all references which I had referred already.
User Privacy and Data Use
App Tracking Transparency
Google AdMob
Google AdMob : Implementation
AdSupport

The firstly, i want to talk about the IDFA:
The Identity for Advertisers (IDFA) is the individual and random identifier used by Apple to identify and measure iOS user devices.
Bellow IOS14, Every AdNetworks use IDFA for defund a specific user, then They use IDFA to be used to deliver personalized ads to user. so IDFA help the AdNetworks can show related ads to our users.
In IOS 14, the IDFA is hidden and you and adnetwork can't get this IDFA, You must to ask user to allow tracking permission to continue use IDFA in IOS 14 system.
So my answers are:
Question 1: What's happen if I don't upgrade these apps as per the last WWDC guidelines? Is app continue ads serving to the user?
The short answers is YES, Your app still continue ads serving to the user. BUTTTTTT: the Adnetwork will do not know anythings about your user, so all ads will be random and unrelated ads
-> clickRate will be reduced -> eCPM will be reduced -> Your revenue will be down too.
Question 2: What's happen if User doesn't give tracking permission to the app?
Like the my answer 1 when user don't allow tracking permission, you can't get IDFA then Your revenue will be down again..
But in this case, Apple created an another choose for Us and Networks. that is SKAdNetwork which helps advertisers measure the success of ad campaigns while maintaining user privacy. But Nobody can make sure this API will better current IDFA System can make. So you should enable SKAdNetwork to track conversions in tracking don't allow case. To get maximum profit
Question 3: App update does make any impact on revenue from ads?
If your user allow the tracking permission, everything is OKAY like nothing happen. If not, you have the SKAdNetwork and let pray for SKAdNetwork will work nice like The Apple said.
Question 4: What is Funding Choices?
Funding Choices is the Google'Tool to help you to ask user allow tracking permission. Funding Choices and SDK UMP will create the explainer message alert which will automatically be shown immediately before the "Tracking permission" alert.
This is automatically and simple. If you don't like Funding Choices, you can create your explainer message yourself to ask user before the "tracking permission" alert is shown
This is all my knowledges after 3 days researching and working about IDFA, IOS14.....
I hope them can help you something. If i had any mistake, reply here!!!. Thanks

The current version my app (pre-iOS 14) is still showing ads, but ad revenue has HALVED since iOS was released. So yes, it seems ad revenue is impacted if you don't implement App Tracking Transparency (ATT).
I have updated my app WITHOUT ATT and Apple now rejects my app. Even though I share no user data with the AdMob framework, disabled location tracking and IAP tracking for AdMob.
So basically my app does not track anything other than the IDFA used by AdMob and Apple rejects it.
My advice would be to implement ATT if you are using Admob. If you don't do that, revenue will decrease and Apple will reject future app updates.

No IDFA means no personalized ads. Because all publishers over the years has build whole advertising services based on IDFA/GAID. Without IDFA you advertisers will not be able to run re-targeting campaigns or narrow targeting options to find target user group.
So you will receive less ads, and those you will see will have low CPM value. So your app will be flooded with cheap/poor quality ads.
You can learn more on my blog article

Related

App Tracking Transparency privacy checkboxes and app store release rejection

I keep getting my iOS app submission rejected by apple with the following message:
Guideline 5.1.2 - Legal - Privacy - Data Use and Sharing
The app privacy information you provided in App Store Connect still
indicates you collect data in order to track the user, including User
ID and Product Interaction. However, you do not use App Tracking
Transparency to request the user's permission before tracking their
activity.
Starting with iOS 14.5, apps on the App Store need to receive the
user’s permission through the AppTrackingTransparency framework before
collecting data used to track them. This requirement protects the
privacy of App Store users.
Next Steps
Here are two ways to resolve this issue:
If you do not currently track, or decide to stop tracking, update your app privacy information in App Store Connect. You must have the
Account Holder or Admin role to update app privacy information.
If you track users, you must implement App Tracking Transparency and request permission before collecting data used to track. When you
resubmit, indicate in the Review Notes where the permission request is
located.
Resources
Tracking is linking data collected from your app with third-party data for advertising purposes, or sharing the collected data with a
data broker. Learn more about tracking.
See Frequently Asked Questions about the new requirements for apps that track users.
Learn more about designing appropriate permission requests.
I already updated my app not to use any IDFA calls (including all the facebook and other SDKs) https://developer.apple.com/documentation/adsupport/asidentifiermanager/1614151-advertisingidentifier
When I try to set the checkboxes in App Privacy section of the app they can't be completely uncheck (i.e. at least one of the options has to be selected) so I can't state that my app is no using device id even though the codebase doesn't make advertisingidentifier at all.
Does App Tracking Transparency really mean that we can't track anything, even user clicks on buttons and screen views???? If so that's insane!
The main issue is that I want to have a better user experience for my users by not showing them an unnecessary ATT prompt.
You need to do the following 2 things:
Update the Data Types section to remove the Device Id. You can find it on the top of the privacy section, then hit Edit, navigate through till the last Nexts and uncheck the Device Id
Update the User ID and Product Interaction sections to uncheck - No, we do not track the user. You can find it at the end of the privacy section, then hit Edit, navigate through till the lastNexts and uncheck the above-mentioned box.
Submit the app again for review.
We were facing same issue when we removed Tracking from application and NSUserTrackingUsageDescription key from app.
Our app was already live on store with tracking enabled. In new version we faced this issue. When app was rejected we just replied them that we are not using this anymore in our application so we removed tracking authentication popup. We also told them that we were not able to update in App privacy because live version have tracking enabled.
After that reply they approved.
Sample Answer to apple when we removed from existing app:
"we have removed NSUserTrackingUsageDescription and tracking from this version, so we also removed Tracking Permission Popup from this version. We tried to remove it from App Privacy, but we could not change the Privacy data types in the Appstore connect because the current live version does use that permission. Please review our request and approve our application submission"

iOS: Can I tell if a user has opted-out of Apple's "Share With App Developers" setting?

We use a third-party analytics library in our app. I'd like to automatically opt users out of these analytics if they have the Privacy > Analytics > Share With App Developers switch turned off.
I understand that this is only for opting users out of Apple forwarding on the analytics they collect, but I feel the intention is clear: that the user doesn't want the developer to receive analytics, no matter the source.
Is there an API to check for this setting or is the only option to re-prompt the user in the app as to whether they want to send analytics?
For that matter is there a way to detect if the user has opted out of all analytics? The intention is less clear here as the description specifically says "Help Apple improve" but again it feels a little weird to prompt the user to send analytics if they've opted out at this level.
Is there an API to check for this setting or is the only option to re-prompt the user in the app as to whether they want to send analytics?
No, Apple doesn't share any information related to user privacy.
Firstly I think that we, all the developers, need these Analytics, User Engagement & Crash Logs.
Having said that no App/Developer should ever violate the rights of user.
There comes Apple Privacy Policy to get user permission for Apple App Analytics to be sent to the App Developers enrolled in Apple Developer Program. But that's just Apple taking care of their legalities. As a developer, we should abide by the legal policies of our Company and abide by the App Store policies and policies of any third party libraries we are using in our app.
For example:
Your App/Company must have a Privacy Policy page & Terms & Condition Page which you give to Apple in the iTunesConnect before uploading the App. So, when the user is downloading the App, he/she has to agree to them.
You are using Crashlytics in your app. You should abide by https://firebase.google.com/terms/crashlytics.
Reference for more reading: How to make your App's privacy policy complaint to data protection and privacy laws

How to limit the use of an app to one device on iOS

I have currently an app that through in-app purchases a user can unlock content on the app. What I have noticed is that some users "abuse" of this by logging with their Apple ID in multiple devices and I'm currently looking into possibilities on how to limit the use of the content to the device where the purchase was done. I understand that Apple doesn't allow that, so that means the payment system should go away from the app.
Therefore, introducing logging will help me to be able to identify the person that is using the app against a backend but still, I need to be able to limit on a device. As far as I know, the UUIDString of the CurrentDevice is not really a way anymore. What other options are?
I saw this library, which seems to promise unique identification:
https://github.com/fabiocaccamo/FCUUID
Another solution probably would be to create a licensing system, so one license can only be used at the time.
Thanks!
I will describe our experience with using same account on different devices (VOD):
User is able to use application on how many devices he want, but he able to watch content only on 5 uniq devices.
Each time user try to watch content, app check if device registered with some UUID, if not then try to register. UUID is uniq per installation, it mean that if user will watch content, then delete app, download again and watch, then he basically lose 1 device.
In same time user able to unregister device via web, but he had only like 25 unregistrations (I don't know what happened if user use them all).
We don't use in-app purchases and accounts are cross-platform (android, iOS, web, tvs, etc), so not sure if it helps you.
AFAIK, Apple does not have limit on how many devices you can user Apple Id. You can have 6 family members so number of devices could be lot more.
I feel it is bias how Apple's guideline talks about limiting music, movies, shows and books to 10 devices but does not say anything about Apps!
Apple - Family Sharing
If your family has purchase sharing turned on, music, movies, TV shows, and books can be downloaded on up to 10 devices per account, five of which can be computers.
I have not seen any application limiting IAP on devices. You could run into risk of Apple rejecting your app, potentially on every update you submit. I would reach out to App Store or if your company have Sales rep contact and get their suggestions/buy-in before spending lot of time and money.
Also, create issue/radar and give specifics about issue. More people request this feature, has better chances of it getting added.
One way you can achieve this is to keep track of receipt you get for IAP and check how many users/devices using that receipt. You would need to build entire flow to educate user about device limitations. Like updating App Store page, warning before purchasing, option to add/remove device and more...
If you are planning to implement device limitation, please beware of the rejection risk.

IDFA automatically in Google Analytics for Firebase?

I'm working on a free app that has been live for 4 years. It has no ads or purchases of any kind. Just a free app.
There is no advertising of any kind, so we have always registered that we do not use IDFA when distributing on AppStore.
We have recently implemented Google Analytics for Firebase, and during our Beta we noticed that Analytics reports the gender of our users. How?
Based on this Firebase-reference it seems that Firebase uses IDFA.
It states that When the Device Advertising ID is not present, Analytics cannot derive demographics and interests information. This identifier shouldn't be available for any of our users, since we literally don't have anything resembling an ad-implementation.
Obviously, I have no idea what IDFA is, and don't understand why this is happening. I am wondering - should we now start to select "Yes - we use IDFA" when distributing? Or can we disable Analytics's use of IDFA? What impact will it have?

Whats the recommended way to handle the Apple's "Data use & sharing" warning message?

I just got mail from Apple stating that
"Data use & sharing" : Your app uses analytics software to collect and send user or device data to a third party without the user's consent. Apps must request explicit user consent and provide a clear visual indication when recording, logging, or otherwise making a record of user activity. This includes any use of the device camera, microphone, or other user inputs.
For your app to remain available on the App Store, you must remove any code, frameworks, or SDKs that collect, record or share a users data and resubmit your app for review.
Please let us know what is the recommended way to handle it,
My suggestions:
Can we just remove the data tracking(only for analytics & statistics which is the key to business) 3rd party SDKs ?
(or)
Just add permission alert stating that we are collecting information for so and so permission and track information ?
Apple has started a crackdown on the apps which tracks user activity through user inputs, screen recording etc.
The best way to get your app approved is to remove any code or the third party sdks which tracks user activity. I resubmitted an app today by removing a third party library and it got approved right away.
But if statistics are the key to your business then you can take a hint from here.
Apps must request explicit user consent and provide a clear visual indication when recording, logging, or otherwise making a record of user activity.
If you use your own privacy policy then clearly state how you track your user and how user's data will be used. And in addition to that, also show some kind of alert in your app that how the user data will be used (maybe through a UIPageViewController)
We ended up keeping all of our analytics (MixPanel, Google, Crashlytics, Facebook, AppsFlyer).
We only removed AppSee - because of the screen recording, and got approved within 10 hours.
My conclusion is that the only thing to remove is the screen recoding and all he rest can remain as is.

Resources