What Permissions are requested during the installation of SwiftKey and why?

Please note that certain devices may use different wording to describe these permissions.

In-App Purchases:
We require this permission to enable theme purchases to be made from the SwiftKey Store.

Find accounts on this device:
This is used to make it easier for you to link accounts such as Google and Facebook to your SwiftKey Keyboard installation for Cloud personalization. Rather than having to manually log in to each service, you can simply pick the relevant account from a list, saving time with authentication.

Read SMS or MMS: 

During the first run setup of SwiftKey Keyboard for Android, we personalize from your sent SMS messages in order to establish a base for your personalized language model. This model remains local on your device unless you sign up for SwiftKey Cloud, where it may form part of the data that is backed up and synced.

Photos / Media / Files:
We use this to store language packs, configuration data and themes on the SD card / external storage of the phone or tablet as this would take up too much of the device’s internal storage. This is standard and recommended practice.

Modify/delete SD card contents: 
SwiftKey's learned language file is stored on your SD card (or equivalent). We are constantly fine-tuning your learned language file based upon your own communication patterns. When you add new words to SwiftKey, this file will be modified to provide you with SwiftKey user-specific predictions. Themes from the SwiftKey Store are also saved to the SD card.

Manage internal storage contents: 
We store some information on your internal storage to enable us to improve performance.

Read phone state and identity: 
This is used to generate a unique identifier for your device that helps when tracking bug reports and errors, as well as providing you with support. Your device's IMEI is used to generate this unique identifier, however we cannot deduce the actual IMEI based on the identifier itself.

Error reports are automatically sent silently in the background on the rare occasions the app crashes. However, they do not contain personal data - only programming crash analytics that we use to determine the problem in the software, as is standard with most popular apps. We use this to fix the bugs that have caused any crashes.

Full Internet access / Wifi / Network Access:
This is required to allow SwiftKey to download language modules so that you can benefit from our prediction technology. It also allows the keyboard to take advantage of our optional Cloud services, including Personalization, Backup and Sync, and Trending Phrases, and 
for error reports and downloading themes from the Theme Store. All data is handled using anonymized requests. See our privacy policy for more details on how we protect your data.

Receive Data from Internet View Network Connections:
See the section above on Full Internet / Wifi / Network Access

Control Vibration:
We need this permission to allow users to edit/turn on or off their keypress vibration.

Prevent Device from Sleeping:
We require this permission to stop the phone going to sleep when we are, for example, in the middle of doing a back-up for those users who have opted in to the Back-up & Sync service from SwiftKey Cloud.

Run at Startup:
This ensures SwiftKey Keyboard is started at the right part after booting up the phone or tablet.

Google Play billing services:
This is required for us to sell digital content from within our application. This permission is what will let you access the SwiftKey Store and enable you to purchase content.

Feedback and Knowledge Base