Why does SwiftKey require full access?

19th September 2014

Update: We have made some updates to this blog to provide a more detailed description due to the interest in this topic, in particular to explain what Full Access means on iOS, and how SwiftKey uses this permission. This blog relates to SwiftKey; we cannot comment on how other keyboard apps use this permission, and what safeguards they may or may not have in place.

Hi everyone,

As we’re welcoming so many new users on iPhone, iPad and iPod touch – more than 1m in the first day alone – we wanted to help explain some of the process when you first download your new keyboard.

You might have noticed your iOS 8 device saying SwiftKey requires Full Access to work. Granting an iOS keyboard extension Full Access is the permission that allows it to share data with its “container” app (the SwiftKey app you see on your homescreen) and gain network access. We request this permission to allow SwiftKey’s keyboard extension to share data with its container app in order to provide you with a full SwiftKey feature-set and simplify how settings are managed.

We require Full Access because SwiftKey Keyboard stores language models, personalized learning and keyboard preferences outside the keyboard extensions framework on your device, as part of the broader SwiftKey app, and without this permission the keyboard extension would not be able to read or write to these files.

Architecting SwiftKey for iOS in this way allows us to make sure the keyboard is both as user friendly and powerful as possible. It allows you to manage your settings in a clear and simple way from the app on your home screen, have access to a library of frequently updated language models, have further customization of the keyboard with themes and additional downloadable content, and ensure all of this is presented within a reasonably-sized app.

It is important to state that SwiftKey Keyboard does not “transmit anything you type”, as Apple’s warning message may lead you to think. That warning message (which is displayed before a user allows Full Access) is there to make sure you are aware of what is technically possible before making a decision about whether to trust the developer of a keyboard extension.

No language data or words that you type will ever leave your device or be transmitted while using SwiftKey Keyboard unless you specifically opt in to our SwiftKey Cloud service (see below).

By having Full Access, we’re also able to seamlessly improve both language predictions and our feature-set in the future; for example, we can roll out new or improved languages without disrupting your typing by requiring the app to be updated. In order to keep up with how quickly language evolves, we update our language models from time to time.

Enabling the Full Access permission also means we are able to offer additional – but strictly opt-in – features through SwiftKey Cloud, where your language predictions can be backed up, synchronized and enhanced through other sources of personalization data that you make available.

Backup & Sync means your language insights are stored safely in case you upgrade or replace your device. It also means your personalized predictions are shared across your enabled SwiftKey devices, so you have the words and phrases that matter to you at your fingertips when you switch from, say your smartphone to your tablet, or from your Android device to your iPhone and vice versa. Personalization means SwiftKey learns from your message history on Gmail or Facebook (or other) accounts, to speed up its learning and ensure you get tailor-made predictions from the get-go.

We hope we’ve helped explain what ‘Full Access’ means. We want to make it as easy as possible to understand why this setting is there, why we require it, what data you do and do not share, and how we keep it safe. Privacy and data security are very important to us at SwiftKey, and we know they’re equally important to you, too.

More information can be found on our privacy and data security policies, to give you confidence. You can also head to our Support Portal to check out the FAQs there or engage with our expert community support team.


The SwiftKey Team

11 responses to “Why does SwiftKey require full access?”

  1. Chris says:

    People are pairnoid. As if the government doesn’t track their every move.

  2. Lyondhur says:

    My problem is the compulsory data collection (stats or whatever) without me actually wanting to disclose that. This should be optional, not within usage and certainly nor obligatorily.

    Why not a “send stats/analytics data?” button in the settings? All other apps do this, why not you lads?

    Do you really need all this tension and inquiring over this?

  3. zzamboni says:

    Thank you for the clarification. When I tried signing up for SwiftKey Cloud using my Google account, SwiftKey requested access (according to the Google confirmation screen) for reading and managing my email, including both composing and deleting messages. This seems an unnecessary level of access, and made me cancel the operation. Can you please clarify why this is needed, or tone down the level of access requested to Google?

    Other than this, I’m really enjoying SwiftKey on my iPhone. Thanks!

    • paradeigmas says:

      This is precisely the reason why I deleted my account. I though SwiftKey was only using my Gmail as a login, but then I realized it actually read ALL of my emails! I discovered a workaround though: Sign in using your facebook account and only allow SwiftKey access to basic information. This way you can enable cloud without giving SwiftKey access to everything you’ve ever sent.

  4. Cesar GC says:

    So why other 3rd party keyboards don’t require full access to work without limiting their functionality?

  5. Lyondhur says:

    Simple: use an app called “Swipe”.

    Great offline dictionary. Safe. Prettier.

Leave a Reply

You must be logged in to post a comment.

This website uses cookies. By continuing to use this site, you consent to our use of cookies