Welcome to Pete Brown's 10rem.net

First time here? If you are a developer or are interested in Microsoft tools and technology, please consider subscribing to the latest posts.

You may also be interested in my blog archives, the articles section, or some of my lab projects such as the C64 emulator written in Silverlight.

(hide this)

Traits of a good Windows Store app privacy policy

Pete Brown - 21 January 2013

A common cause of Windows Store app certification failures is a missing or insufficient privacy policy. Many don't realize that a network-enabled app must have a policy, or if they do, don't realize exactly what needs to go into it. In this post, I'll talk about some of my observations regarding what makes for a good privacy policy for a Windows Store app.

IMPORTANT: This is neither official guidance from Microsoft, nor legal advice from me. I'm not a lawyer - not even close. Privacy policies are legal documents like licenses and should be crafted by a lawyer. When you speak to your lawyer, however, you'll be better prepared because of the information below. These are simply my suggestions based upon what I have observed. I do not guarantee that a privacy policy written as I recommend will pass store certification or be an appropriate legal document. (Hopefully that's enough disclaimer.)

Also, I am not on the Windows Store certification team. Please don't come to me with "App X's privacy policy doesn't seem to follow your instructions but it got in and I didn't" type of questions. For those types of questions, there is the "Resolving certification errors" page http://aka.ms/StoreFix and the Windows Store support site http://aka.ms/StoreSupport . Also, for obvious legal reasons, I cannot review your privacy policy and provide you with feedback on it.

Yes, the disclaimer is pretty big, but there's good reason behind that. If you dig into the certification requirements, you'll see that we don't recommend a privacy policy or provide any templates for one, despite it being a fairly common request. That's because Microsoft is not able to give legal advice and, as I mentioned above, the privacy policy is a legal document.

You should use a lawyer to help you write your privacy policy. In reality, though, I know most independent developers will not request the services of a lawyer, so let's talk a bit about what should go into that policy regardless.

First, please review these requirements (specifically requirement 4.1/4.1.1). The requirements are updated quite often to remove ambiguities and provide further guidance, so if you see any conflicts between what I'm writing here and what's in those requirements, the requirements rule. The other important page is the Resolving certification errors page which also includes information on the privacy policy.

What is a privacy policy?

In the context of a Windows Store app, a privacy policy is a legal document which details any privacy related aspects of the app. It's intended to be transparent to the user and to allow them to make informed decisions about what they share with the app, and even if they want to install it to begin with.

ASIDE: When writing your policy, consider not only how to explain the privacy aspects of the app, but also whether the app even needs to the things it is using. For example, does the server really need to store locale information about the user? If not, go back to the app development team and request they not keep that around. Your privacy and other legal obligations get simpler the less you store. If you don't absolutely need it, don't store it.

How to create a good privacy policy

A good privacy policy is clear, concise, and complete. It tells the user exactly what is captured and what the app does it with. It gives the user instructions to follow if they don't agree with aspects of the policy (even if those instructions are to uninstall the app and then email us at XYZ to delete the persisted data).

Make it specific

Many privacy policies fail in certification because the policy isn't specific to the app. In most cases, the linked policy is a generic one which is available on the company's web site. I personally prefer to see a separate privacy policy just for the app, but if that's not possible, you at least need to make sure the policy has a section which very specifically details the named Windows 8 app, what it collects, etc.

Any app-specific section should have its heading on-screen, without scrolling, when displayed at 1366x768 on a PC. In this way, an end user will more easily find the content and what an end-user can more easily find, so can a certification tester.

Make it comprehensive

The privacy policy needs to detail every piece of information that is captured, and what you do with it. For example:

  • IP Address
  • Device ID
  • User name from Windows
  • Language information
  • Third-party account information
  • Webcam? Microphone?
  • Documents?
  • Contact information?
  • Information collected by ads? (link to privacy policy for the ad network)
  • etc.

If any of those things are transmitted (IP address always is), then you need to say what you do with it. For example, you may point out that your server keeps a log of IP addresses which contact the service, but that this information is not given to third parties, is purged every X days (if it is), and would not be released to any third parties except when required by law. You must

  • Explain what is collected
  • Tell your users how it is used, stored, secured, and (if so) disclosed
  • Provide a way for the user to control the information
  • Explain how users can access the information you've collected
  • Follow the law.

Although it is rare, if you don't collect or store anything, just say so in your policy (for example, a peer-to-peer networking app which stores nothing, not even the IP addresses, so server logs don't even come into play). You still need to have a privacy policy if you declare the Internet Client, Internet Client/Server or Private Network Client/Server capabilities.

Make it comprehensible

Legal language is generally seen as pretty opaque to common English readers. The language serves a good purpose, however, in that the words chosen typically have well-understood legal definitions and therefore help remove ambiguity. A common mistake I've seen with EULAs and similar in the past, is a lay person writes them using what they think looks like legal language. The end results is often both incorrect and incomprehensible. To a lawyer, it sticks out like web page code written by that spreadsheet guru in the accounting department does to you.

A privacy policy does not necessarily have to be written in legalese. (Your lawyer can help you make this distinction if necessary). In fact, I much prefer privacy policies that are short and understandable and written in common language. If you are not a lawyer, and are writing your policy yourself, just write it in plain English (or the appropriate primary language for your app) and don't pretend to be a legal expert.

Make it honest

Be honest about what you collect and what you do with it. If there's anything which is even remotely a gray area, explicitly call it out in the policy.

If you update the privacy policy, include a revision date at the top and then link to any previous versions. In general, unless you've made the user opt in to a newer version of the policy, the one that is in effect is the one that was out there when they purchased the app. If there's any doubt, contact a lawyer for how to proceed with revisions. Just don't try to slip them in there with no notice.

Don't be mean or sneaky. It will catch up with you.

Make it available

The privacy policy is linked to from the description page of your Windows Store app listing, as well as from the charms bar while the app is running. I'd also encourage you to make it available as a link from your web site's standard privacy policy.

image

You can link to a web page with the privacy policy, or simply include it in-line. I prefer to read it right on the screen, much like the eBay app does, but either approach can be valid. Here's the eBay app showing all of the points I've discussed so far.

image

I believe their policy is simply in an IFrame or webview in the flyout. In that way, it is made available inside the app as well as online.

There are many other aspects of a good privacy policy, but these were the ones that really stood out to me. Please consider them when creating your own apps. Most of all, consider your user and what is appropriate for them and fair to them. Put the user in control of their data and their privacy, and don't make it difficult for them to opt-out.

   
posted by Pete Brown on Monday, January 21, 2013
filed under:    

3 comments for “Traits of a good Windows Store app privacy policy”

  1. VJsays:
    Hi Pete

    This question is not related to your article but related to WPF. Request you to reply

    How accurate is the Speech Recognition in WPF ? Mainly from Speech to Text Commands
    I have a scenario where i have to make the whole applications or most part of the application to have Direct Audio Command interaction with User Interface where the user can operate the whole application with Audio commands rather than mouse or keyboard. For example let says if my user says Select Patient Screen or Go to Patient Selection the application should navigate to that particular screen.

    If User says commands like open, close, move etc attached to particular UI element it should behave accordingly. I want the whole user interface to be Voice Controlled or controlled or operated with various Voice Input Commands. I know the SpeecRecognition and Speech Synthesis libraries provided in .Net Framework but worry is how accurate it is.? how successful is the Idea of Voice Controlled User Interface in WPF Application? If it works how to achieve the Accuracy ? What would be the right approach for Implementing the Speech Input UI?

    How accurate is the Speech Recognition in WPF ? Mainly from Speech to Text Commands
    I have a scenario where i have to make the whole applications or most part of the application to have Direct Audio Command interaction with User Interface where the user can operate the whole application with Audio commands rather than mouse or keyboard. For example let says if my user says Select Patient Screen or Go to Patient Selection the application should navigate to that particular screen. If User says commands like open, close, move etc attached to particular UI element it should behave accordingly. I want the whole user interface to be Voice Controlled or controlled or operated with various Voice Input Commands. I know the SpeecRecognition and Speech Synthesis libraries provided in .Net Framework but worry is how accurate it is.? how successful is the Idea of Voice Controlled User Interface in WPF Application? If it works how to achieve the Accuracy ? What would be the right approach for Implementing the Speech Input UI?

    Thank You

    VJ

Comment on this Post

Remember me