Mobile Apps

App Privacy Labels, ATT and Data Safety: Getting the Disclosures Right

SKIMBOX Team

Both stores make you declare what your app collects before it ships, and both hold you responsible for what your third-party SDKs do. Most rejections and most inaccurate labels come from developers not knowing what is inside their own app.

App Privacy Labels, ATT and Data Safety: Getting the Disclosures Right

Both app stores now require you to declare what your app collects before it ships, and both display that declaration to users deciding whether to install.

Most developers answer those questions honestly and get them wrong anyway, for one reason: they answer about the code they wrote, and the stores are asking about everything inside the app, including third-party libraries somebody added two years ago and nobody has thought about since.

This article covers what each store actually requires, how App Tracking Transparency works and when it applies, and the audit that makes the answers accurate.

The three separate obligations

They get merged in conversation and they are distinct.

Apple's App Privacy details, sometimes called privacy nutrition labels. Apple describes explaining how your app handles user data as an important part of submitting to the App Store, with the label's purpose being to help customers understand what data is collected from your app and how it is used [1]. To create it you answer questions about what data your app collects, the use case for each type, and how it is stored [1].

Google Play's Data safety section, which Google describes as a way for developers to show users transparently whether and how they collect, share and protect user data before users install the app. Developers complete a form in Play Console and the information appears on the store listing [2].

App Tracking Transparency, which is Apple's runtime permission framework and a different kind of obligation entirely.

An app can have an extensive privacy label and never need an ATT prompt. It can have a minimal label and still require one. Answering each on its own terms rather than treating them as a single exercise is the first step to getting them right.

Google's requirement catches people out

One detail is worth pulling out because it produces avoidable delays.

Google states that all developers with an app published on Google Play must complete the Data safety form, including apps on closed, open or production testing tracks, and that even developers whose apps do not collect any user data must complete the form and provide a link to a privacy policy [2].

Two consequences.

Collecting nothing does not exempt you. Teams reason that a form about data collection cannot apply to an app that collects nothing, which is intuitive and wrong.

And the obligation covers testing tracks, not just public releases. A team planning a closed beta discovers the requirement when the track will not go live and somebody is already waiting to test.

Complete the form before you need the track.

What ATT actually governs

Apple's definition is precise and worth reading carefully, because the common understanding of it is wrong.

In iOS 14.5 and later, you need the user's permission through the App Tracking Transparency framework in order to track them or access the device's advertising identifier. Tracking refers to 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 measurement purposes [3].

Read that again and notice what it is about: linkage across companies, for advertising purposes. Not analytics in general. Not any data collection.

Which produces the question developers get wrong most often.

"We do not run ads, so ATT does not apply to us." Possibly false. The trigger is not whether you sell advertising. It is whether data from your app is linked with data collected by other companies for advertising or advertising measurement. An attribution SDK measuring which campaign produced an install is doing exactly that, and plenty of apps contain one because somebody added it during a growth push in 2023.

So what decides it is not your intentions. It is what your app actually does, which in practice means which third-party SDKs you have included.

The dependency audit is the whole job

This is the section that matters, and it is the one teams skip.

Your disclosure obligations cover data collected by third-party code in your app, not only code your team wrote. As far as the stores are concerned, you are responsible for what your SDKs do.

Most developers answer the store questions from their own understanding of the app, which is an accurate account of their own code and an incomplete account of the app. The analytics library, the crash reporter, the attribution tool, the advertising network, the customer support widget, the social login SDK: each may collect and transmit things nobody on the current team has ever examined.

So build the list. Every third-party library in the app. For each one, find its own privacy documentation, which the major providers publish specifically so developers can complete these declarations, and record what it collects and for what purpose.

It is a tedious afternoon for a simple app and longer for one with a large dependency tree. It is also the only way to answer accurately, and most teams have never done it. Making the list usually surprises somebody, which is itself a useful outcome.

Do it once properly and subsequent releases become a review rather than a repeat.

A worked audit, start to finish

The dependency audit is the whole job, so here is what doing it actually looks like on a real app rather than in principle.

Step one, list everything. Open your dependency manifest, whichever your platform uses, and write out every third-party package. Not the ones you remember adding, all of them, including transitive dependencies that arrived because something else needed them. A mid-sized app frequently has thirty to sixty entries and the team can name perhaps ten.

Step two, separate the ones that touch data. Most entries are utilities that never transmit anything: a date formatter, an image loader, a layout helper. Set those aside. What remains is usually a much shorter list of analytics, attribution, crash reporting, advertising, payments, support chat, social login and push notification libraries. That is your actual scope.

Step three, find each one's privacy documentation. The major providers publish this specifically so developers can complete store declarations. Record for each: what categories it collects, whether it transmits off-device, whether it links to identity, and whether it does anything that meets Apple's tracking definition.

Step four, reconcile against your current declarations. Put your list next to what you told Apple and Google last time. The gaps are the finding. Expect at least one, and expect it to be something nobody currently on the team chose.

Step five, decide what to remove. Anything on the list that no longer earns its place comes out. This is usually the most valuable part of the exercise, because removing a library removes a disclosure, a review risk, a maintenance burden and an attack surface simultaneously.

Budget an afternoon for a simple app and a couple of days for a large one. Do it once properly and every subsequent release becomes a five-minute check rather than a repeat of the whole thing.

Apple's privacy manifests, and why stable apps break

There is a second, related requirement that catches teams who have not changed anything.

Apple requires third-party SDKs commonly used in apps to ship a privacy manifest describing their data practices, and for binary dependencies a signature, with Xcode validating both at build time. Apple publishes the list of SDKs to which this applies [4].

The consequence is not obvious until it happens to you. The requirement applies when you submit, not when you last wrote code. An app that has been running unchanged for two years still has to satisfy today's requirements the next time you update it for any reason at all.

So a small bug fix turns into a dependency upgrade project, because a library you have not touched since 2023 does not ship a manifest and the build now fails validation.

That is a strong argument for keeping libraries reasonably current rather than batching upgrades, which our guide on saying no to a feature covers as a general maintenance principle. The cost of staying current is small and continuous. The cost of catching up is concentrated and lands at the worst moment, which is when you urgently need to ship a fix.

The questions the forms actually ask

Both stores work through data categories: contact information, identifiers, financial information, location, health data, contacts, user content, usage data, diagnostics. For each, whether you collect it, why, and whether it is shared or linked to identity.

Two definitions cause most of the errors.

Collected versus shared. Collected means data leaves the device to you. Shared generally means it goes to a third party. Teams get this wrong because sending data to an analytics provider they use daily feels like internal use rather than sharing. It is commonly treated as sharing. Read each store's current definitions rather than applying intuition.

Linked to identity. Whether data is associated with the user's identity rather than held genuinely anonymously. Teams over-claim anonymity here routinely. If data can be tied back to an account, a device identifier, or anything else resolving to a person, it is generally linked, regardless of whether you personally use it that way.

The category lists and definitions change, so work from the current form in the console rather than from a copy of last year's answers. Both Apple and Google revise this material without version histories, which is a reason to check current documentation before every significant submission rather than relying on what you did last time.

Designing the ATT prompt properly

If ATT applies, when and how you ask matters.

Timing. After the user has some sense of what your app is and why the request is being made, rather than immediately on first launch before anything has happened. Apple's broader permissions guidance is to request access when the app clearly needs it for a specific feature, and a prompt fired at launch before any value has been shown reliably produces declines. Our guide on apps nobody is using covers permission timing as an onboarding issue in more depth.

Context. You can explain in your own interface beforehand why the permission helps, and that is generally sensible. The system prompt has fixed wording you cannot alter beyond the purpose string. Explaining honestly is legitimate; implying the app will not work without it is not.

The declined state. If a user declines, you must not track them or access the advertising identifier, and your app should continue to work normally. Design for declined as the default case rather than as an exception. Building an experience that degrades or repeatedly nags after a decline is poor practice and a review risk.

Where the declarations contradict your own policy

Here is a mismatch that exists in a great many apps and that almost nobody checks.

The store declaration is completed by a developer, from a technical view of the app. The privacy policy is usually written by somebody else, often adapted from a template, describing intentions rather than implementation.

They frequently disagree.

A privacy label declaring collection of device identifiers and location, alongside a website privacy policy that mentions neither because it was written for the website, is a contradiction sitting in public on two different properties. It is also precisely what any inquiry would look at first.

Read them side by side. Both stores require a privacy policy link, and Google states it explicitly even for apps collecting no data [2]. The link needs to work, resolve to a genuine policy covering that app, and stay live. A dead privacy policy link is a trivially avoidable rejection and it happens regularly when a marketing site gets redesigned and nobody checks the store listings.

If your app collects things your general company policy does not mention, extend the policy. That is usually sufficient and it is considerably cheaper than the alternative of leaving the gap.

What this is not

It is not UAE data protection compliance. Store disclosures are platform requirements set by Apple and Google. They overlap with data protection law in that both concern personal data, and they are different obligations with different scopes and different enforcement. Our guide on PDPL compliance covers the local framework, and satisfying a store form does not discharge it.

It is not a route around obligations by distributing internally. Google's requirement covers testing tracks. For genuinely internal enterprise distribution outside the public stores, the store requirements do not apply in the same way, and your data protection obligations do not change at all. Only the platform layer differs.

What goes wrong, in order of frequency

Five failure patterns, roughly ranked by how often we see them.

An SDK collecting something nobody knew about. The clear leader. The declaration is honest about the team's own code and silent about a library added during a growth experiment two years ago. Nobody is being deceptive; nobody looked.

A declaration completed accurately at launch and never revisited. Features were added, libraries changed, and the store listing still describes the app as it existed at version 1.0. This drifts slowly enough that no single release feels like the moment to check.

A privacy policy that contradicts the store label. Written by different people at different times for different purposes, never read side by side. It is a contradiction sitting in public on two properties you control.

A dead or wrong privacy policy link. Usually caused by a website redesign where nobody thought about the app store listings. Trivially avoidable and reliably costs a review cycle.

Over-claiming anonymity. Declaring data as not linked to identity when it is tied to an account or a persistent device identifier. Teams do this sincerely, because they do not personally use the data that way, which is not the test.

Notice that four of the five are process failures rather than knowledge failures. The team knew what the rules were. Nothing in the release process required anybody to check.

Where this sits alongside your other privacy work

Businesses running an app usually have three privacy artefacts in flight and no single owner across them.

The store declarations describe what the app collects, completed by a developer, visible to every prospective user before install.

The privacy policy describes what the business does with personal data, usually written by legal or adapted from a template, linked from both the app and the website.

The data protection compliance work under UAE law is a separate obligation with its own scope, covering how you collect, process, store and delete personal data across the whole business, not only in the app.

These should be consistent and frequently are not, because each was produced by a different function at a different time. The store declaration is the most technically accurate and the narrowest. The privacy policy is the most public-facing and the most likely to be generic. The compliance work is the broadest and the one most likely to be incomplete for a small business.

The practical suggestion is not to merge them, because they genuinely serve different purposes. It is to have one person read all three together once a year and note where they disagree. That is a half-day exercise that surfaces problems no individual review would catch, because each artefact looks fine on its own terms.

Reduce what you have to declare

The most underrated response to all of this is to collect less.

Remove SDKs you no longer use. More common than teams expect. An attribution tool from a campaign that ended, an analytics library replaced but never deleted, a support widget from a vendor you left.

Question whether each remaining library earns its place. Every one contributes to your declaration, your review risk, your app size and your maintenance burden.

Collect fewer identifiers where you reasonably can.

A smaller dependency footprint produces a simpler declaration, a faster review, and less to keep accurate over time. Whether a lighter privacy label improves conversion is a fair question, and we are not going to quote you a figure, because the published numbers come from analytics and marketing vendors with an interest in the answer. Treat it as good practice rather than as a measurable lever.

One more thing worth checking

Both stores expose your declaration publicly, which means your competitors' declarations are visible to you too.

That is a genuinely useful and almost entirely unused research input. Open the store listing for three apps in your category and read their privacy labels. You will learn what data collection is normal in your market, whether you are an outlier in either direction, and occasionally that a competitor is collecting something you had not thought to.

Being a visible outlier on the heavy side is worth knowing about, since the label sits in front of every prospective user at the moment they are deciding. Being an outlier on the light side is worth knowing too, because it is something you could reasonably say in your marketing.

Neither observation should drive your engineering. It costs ten minutes and it occasionally changes a priority.

Making it stick

Two process changes prevent the drift that produces inaccurate labels over time.

Ownership. A developer who can see the dependency list, working with whoever owns privacy or legal. The technical view is needed for accuracy; the governance view is needed to check the answers against your policy and your obligations. Completed by a developer alone, the answers tend to be technically accurate and inconsistent with what the business has published elsewhere.

A release checklist item. At each release, check whether any dependency was added, removed or upgraded, and whether any new feature collects something new. If either happened, revisit the declarations before submitting.

That single checklist line is the difference between a declaration that stays accurate and one that quietly drifts away from reality across a year of releases.

Before your next submission

Four checks, fifteen minutes.

Confirm the current requirements on both stores rather than assuming they match last time. Verify your privacy policy link resolves and describes the app. Confirm no dependency changed since your last declaration. And read your privacy label next to your privacy policy to check they agree.

If you want the deeper version, an SDK and disclosure audit covering what your app actually collects, whether your store declarations match, whether your privacy policy agrees with both, and what could be removed starts from around AED 2,500 with us. Final pricing depends on scope, and these are our own figures rather than a market survey. Legal questions about your obligations belong with a qualified adviser rather than with us.

The free version remains the list: every third-party SDK in your app, with what each one collects, taken from its own documentation rather than from memory.

References

  1. Apple, App Privacy Details on the App Store
  2. Google Play Console Help, provide information for Google Play's Data safety section
  3. Apple, user privacy and data use
  4. Apple, upcoming third-party SDK requirements
  5. Apple, App Store Review Guidelines
  6. Apple App Store Connect Help, manage app privacy
  7. SKIMBOX, app store rejection and review guidelines
  8. SKIMBOX, your app is built and nobody is using it
  9. SKIMBOX, product analytics and event tracking
  10. SKIMBOX, PDPL compliance in the UAE

Apple and Google revise these requirements without published version histories, so check the current documentation before each significant submission. Store disclosure requirements are platform obligations and are not a substitute for compliance with UAE data protection law. This article is not legal advice.

Frequently asked questions

  • What are App Store privacy labels?

    Apple requires developers to explain how their app handles user data as part of submission, and that declaration is displayed on the store listing. Apple describes the purpose as helping customers understand what data is collected from the app and how it is used. To create the label you answer questions about what data the app collects, the use case for each type, and how it is stored, before the app can be published. It is a submission requirement rather than an optional disclosure.

  • What is Google Play's Data safety section?

    Google's equivalent, described as a way for developers to show users transparently whether and how they collect, share and protect user data before installation. Developers complete a form in Play Console and the resulting information appears on the store listing. It covers both collection and sharing, and it asks about your security practices as well as about what data is involved. Like Apple's label, the result is displayed publicly to users deciding whether to install.

  • Do I have to complete these even if I collect nothing?

    Yes on Google Play, explicitly. Google states that all developers with an app published on Play must complete the Data safety form, including apps on closed, open or production testing tracks, and that even developers whose apps collect no user data must complete the form and provide a link to a privacy policy. Assuming you are exempt because you collect nothing is a common and entirely understandable reason for a submission to be held up, since the requirement is counterintuitive if you reason from the form's name.

  • Does the requirement apply to test tracks?

    On Google Play, yes. The obligation covers apps on closed, open and production testing tracks rather than only public releases. That catches teams who assume a closed beta is outside the scope and then find their internal testing blocked. Complete the form before you need the track rather than at the point when somebody is already waiting to test, because discovering the requirement then costs you a day and a certain amount of goodwill.

  • What is App Tracking Transparency?

    Apple's framework requiring you to obtain the user's permission before tracking them or accessing the device advertising identifier. Apple defines tracking as 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 measurement. The definition is specifically about linkage across companies for advertising purposes, rather than about analytics or data collection generally. Reading it carefully changes who thinks it applies to them.

  • Does ATT apply to my app if I do not run ads?

    Possibly, and this is the most misunderstood part. The trigger is not whether you sell advertising. It is whether data from your app is linked with data collected by other companies for advertising or advertising measurement purposes. An attribution SDK measuring which campaign produced an install, or an advertising network library added during a growth push, can bring you within scope even though you have never sold a single advertisement yourself.

  • So what actually decides whether I need the prompt?

    What your app does with data and, in practice, which third-party SDKs you have included. Many teams add an analytics or attribution library early, forget it is there, and then answer the tracking question based on their own intentions rather than on their dependency list. Read the privacy documentation for every third-party library in your app before answering, because your intentions are not the test and your dependency list is where the answer actually lives.

  • What happens if a user declines the ATT prompt?

    You must not track them or access the advertising identifier. Your app should continue to work normally, and building an experience that degrades or nags after a decline is both poor practice and a review risk. Design for the declined state as your default case rather than as an exception to handle later, because a substantial share of users decline these prompts and your app has to work properly for all of them.

  • When should the ATT prompt appear?

    After the user has some sense of what your app is and why the request is being made, rather than immediately on first launch before anything has happened. Apple's broader guidance on permissions is to request access when the app clearly needs it for a specific feature. A prompt fired at launch, before any value has been shown or any feature used, reliably produces declines from users who have no basis yet for deciding anything about your app.

  • Can I explain the prompt before showing it?

    You can provide context in your own interface beforehand, and this is generally sensible, provided you do not misrepresent what the permission does or pressure the user. The system prompt itself has fixed wording you cannot alter beyond the purpose string. Explaining honestly why the permission helps is entirely legitimate and generally sensible. Implying that the app will not function without it is not, and it is the kind of thing review processes look for.

  • What is the relationship between the privacy label and ATT?

    They are separate obligations that overlap. The label is a disclosure of what your app collects and how. ATT is a runtime permission governing tracking specifically. An app can have an extensive privacy label and never need an ATT prompt, or a minimal label and still require one. Answer each obligation on its own terms rather than treating them as a single exercise, because merging them is how teams end up with a label that does not match their runtime behaviour.

  • Who is responsible for what my SDKs do?

    You are, as far as the stores are concerned. Your disclosure must cover data collected by third-party code in your app, not only code your team wrote. This is the single biggest source of inaccurate labels anywhere. Developers answer honestly about their own code and never audit the libraries they inherited, which means the declaration ends up describing roughly half the app rather than all of it.

  • How do I find out what my SDKs collect?

    Read each SDK's own privacy documentation, which the major providers publish specifically so developers can complete these declarations. Build a list of every third-party library in your app, find the documentation for each, and record what it collects and for what purpose. It is a tedious afternoon for a simple app and a couple of days for a large one, and it is the only way to answer the store questions accurately rather than approximately.

  • What are Apple's privacy manifests?

    A requirement that third-party SDKs commonly used in apps ship a privacy manifest describing their data practices, and for binary dependencies a signature, with Xcode validating both at build time. Apple publishes the list of SDKs to which this applies. The practical effect is that an outdated version of a common library can block your next submission even though your own code has not changed at all since the last accepted release.

  • Why does that matter if I am not changing anything?

    Because the requirement applies when you submit, not when you last wrote code. An app that has been stable for two years still has to satisfy today's requirements the next time you update it for any reason. Teams discover this when a small bug fix turns unexpectedly into a dependency upgrade project. It is why keeping libraries reasonably current costs less overall than batching upgrades until something forces them.

  • How often do these requirements change?

    Frequently enough that you should check both stores' current documentation before every significant submission rather than relying on what you did last time. Apple and Google revise this material without version histories, and the requirements have expanded repeatedly. Treat any written summary, this article included, as a starting point rather than as the current rule, and check the console and the official documentation before each significant submission.

  • What is the most common cause of an inaccurate label?

    A third-party SDK collecting something the developer did not know about. The second most common is a label completed accurately at launch and never revisited after new features or new libraries were added. Both are entirely avoidable with a review step tied to your release process, rather than treating the declaration as a one-off exercise completed at first submission and then never revisited across dozens of later releases.

  • Does an inaccurate declaration matter if nobody notices?

    It matters because the stores do check, because a mismatch between your declaration and your app's behaviour is a review issue, and because the declaration is a public statement about your data practices that sits alongside your privacy policy. A privacy label stating that you collect nothing, while your app quietly sends identifiers to an advertising network, is a problem on more than one axis and it is publicly visible on your listing.

  • How does this interact with our privacy policy?

    They should agree, and frequently they do not. The store declaration is completed by a developer from a technical view of the app. The privacy policy is usually written by somebody else, often from a template, describing intentions rather than implementation. Read them side by side once a year, because a contradiction between the two is exactly what any inquiry or complaint would examine first, and neither document looks wrong when read on its own.

  • Does this satisfy our UAE data protection obligations?

    No. Store disclosures are platform requirements set by Apple and Google, not compliance with UAE law. They overlap in that both concern personal data, and they are different obligations with different scopes. Our PDPL guide covers the local framework. The store declaration is a platform requirement and is not a substitute for whatever UAE law separately requires of you as a data controller, which is a broader obligation.

  • What data categories do the forms ask about?

    Both stores work through categories such as contact information, identifiers, financial information, location, health, contacts, user content and usage data, asking whether each is collected, why, and whether it is shared or linked to identity. The category lists are published and they change over time, so always work from the current form in the console rather than from a saved copy of last year's answers or a colleague's notes.

  • What is the difference between collected and shared?

    Collected means the data leaves the device to you. Shared generally means it goes to a third party. That distinction catches teams out because sending data to an analytics provider you use is commonly treated as sharing, even though you think of that provider as part of your own stack. Read each store's current definitions carefully rather than applying intuition, because the intuitive reading of sharing excludes exactly the case the stores most want disclosed.

  • What does linked to identity mean?

    Whether the data is associated with the user's identity rather than held in a genuinely anonymous form. Many teams over-claim anonymity here. If data can be tied back to an account, a persistent device identifier, or anything else that resolves to a person, it is generally linked, regardless of whether you personally use it that way in practice or ever intend to. The capability is the test rather than the intent.

  • Do I need a privacy policy URL?

    Yes on both stores, and Google states it explicitly even for apps collecting no data. The link needs to work, resolve to a genuine policy about that app, and stay live. A dead privacy policy link is a trivially avoidable rejection and it happens with some regularity, usually when a marketing site gets redesigned and nobody thinks to check the app store listings afterwards to see whether the link still resolves.

  • Should the policy be app-specific?

    It should at least cover the app accurately, which a generic company policy written for a website often does not. If your app collects location or device identifiers and your website policy does not mention either, the policy is not describing the product it is linked from. Extending an existing policy to cover the app accurately is usually sufficient and inexpensive. Ignoring the gap is not, because the mismatch is public and sits on properties you control.

  • Who should complete these forms?

    A developer who can see the dependency list, working with whoever owns privacy or legal. The technical view is needed to answer accurately and the governance view is needed to check the answers against your policy and your obligations. Completed by a developer alone, the answers tend to be technically accurate and quietly inconsistent with what the business has published elsewhere in its privacy policy and terms.

  • How long does getting this right take?

    The forms themselves take an hour or two. The SDK audit that makes the answers accurate takes an afternoon for a simple app and considerably longer for one with a large dependency tree. Budget for the audit rather than for the form, and do it once properly, so that every subsequent release becomes a five-minute review of what changed rather than a repeat of the entire exercise from scratch.

  • What should we do at each release?

    Check whether any dependency was added, removed or upgraded, and whether any new feature collects something new. If either happened, revisit the declarations before submitting. Making that a single checklist item in your release process is the entire difference between a declaration that stays accurate over time and one that drifts quietly away from reality across a year of shipping releases that nobody ever re-checked against the store forms.

  • Can we reduce what we have to declare?

    Yes, and it is worth doing deliberately. Remove SDKs you no longer use, which is more common than teams expect. Question whether each analytics or attribution library earns its place. Collect fewer identifiers where you can. A smaller dependency footprint produces a simpler declaration, a faster review, less to keep accurate over time, and a smaller attack surface. It is the most underrated response to all of this.

  • Does a lighter privacy label help conversion?

    It is visible to users on both stores before they install, so it is reasonable to think it plays some part in the decision. We are not going to quote you a figure, because the published numbers on this come from analytics and marketing vendors with an interest in the answer. Treat a lighter privacy footprint as good practice and a reduction in risk rather than as a measurable conversion lever you can forecast a return on.

  • What happens if we get it wrong?

    The most likely outcome is a rejection or a request for clarification during review, which costs you a release cycle. The more serious outcome is a discrepancy discovered after publication between what you declared and what your app does. Our guide on app store rejections covers the review process and how to respond to one. The more serious version is a discrepancy found after publication between what you declared and what the app does.

  • Does this apply to apps distributed internally?

    Google's requirement covers apps on testing tracks as well as production. For genuinely internal enterprise distribution outside the public stores, the store requirements do not apply in the same way, and your data protection obligations still do. Do not treat internal distribution as a route around privacy obligations. Only the platform layer changes; your responsibilities as a data controller under applicable law remain exactly the same.

  • How does this affect our analytics setup?

    It makes the choice of analytics provider a disclosure decision as well as a technical one, because what they collect becomes what you declare. Our product analytics guide covers instrumenting properly, and the point worth adding here is that a heavyweight analytics stack chosen purely on features, without regard to disclosure, produces a privacy label you may well not want displayed prominently on your public listing to every prospective user.

  • What is the single highest-value action?

    Produce a written list of every third-party SDK in your app with what each one collects, taken from their own documentation rather than from memory. Most teams have never made this list at all, and making it for the first time usually surprises somebody. It is the foundation for every declaration you have to make, for deciding what can safely be removed, and for answering the ATT question honestly.

  • Can you help with this?

    We can. An SDK and disclosure audit covering what your app actually collects, whether your store declarations match, whether your privacy policy agrees with both, and what could be removed starts from around AED 2,500 with us. Final pricing depends on scope, and these are our own figures rather than a market survey. Legal questions about your obligations under UAE law belong with a qualified adviser rather than with us.

  • What should we do before our next submission?

    Check the current requirements on both stores rather than assuming they match last time, verify your privacy policy link resolves, confirm no dependency changed since your last declaration, and read your privacy label next to your privacy policy to check they agree. Those four checks take about fifteen minutes between them and they prevent the most common avoidable rejections, all of which cost you a release cycle rather than anything more serious.

SKIMBOX Team

Tech Consultancy

Get fresh writing in your inbox

One email a fortnight. No filler.

By subscribing, you agree to our privacy policy.

Want us to build something?

We work with teams across MENA, UK, USA, and India to build products, run programs, and grow.

Get in touch

Continue reading