Last updated: 19 October 2026. Includes features introduced in version 1.5.0.
App: ShiftCal: Shift Work Calendar (Android package com.shiftcal.rotaplanner) Publisher: UKACC LTD (Google Play developer name: TheAppDevs_Team) Privacy and support contact: contact@theappdev.team
ShiftCal helps you plan shifts and holidays, calculate estimated gross pay and keep overtime records. This policy explains local app data, Google Play purchases, optional phone features and advertising. No ShiftCal account is required.
ShiftCal 1.3.0 introduces Google-served advertising. Earlier versions up to 1.2.1 did not contain an advertising SDK.
ShiftCal stores shift names, colours, dates, repeating patterns, holidays, working hours, breaks, hourly rates, settings and overtime entries in local app storage. Overtime entries can include dates, titles, hours and notes you provide. This information is used to display your rota, calculate estimates and search your overtime log.
The app does not upload these records to a developer-operated server. There is no developer cloud backup, rota synchronisation or account database. Local calendar features and previously unlocked tools work offline. Avoid putting patient records or other people's sensitive information in your notes.
Android's application controls protect local storage. An optional app lock uses your existing Android device credential. ShiftCal does not receive or store that credential. The lock protects access through the app interface; it does not encrypt records, protect exported files or conceal widgets and notifications.
You can save or restore an account-free backup using Android's document picker. Backups contain your calendars, notes, overtime and planning settings but cannot grant purchased access. A previous local saved snapshot is retained for recovery. You choose the file location, which may be a cloud provider you already use. ShiftCal does not operate automatic cloud sync. Exported backup, CSV, PDF, calendar and image files are not encrypted by ShiftCal; protect and delete them through your chosen file provider.
Selected rota images are processed on this device using Google ML Kit Latin-script text recognition. Google Play services downloads the recognition model; internet access and compatible Play services may be needed before first use. Images and recognised text are not sent to a developer OCR server or to Google for recognition. You must check extracted text before importing it. Google describes separate SDK diagnostics and usage analytics, including device/app information, identifiers, technical configuration, performance and errors. Remove Ads does not disable this optional OCR SDK's diagnostics. See https://developers.google.com/ml-kit/terms and https://developers.google.com/ml-kit/android-data-disclosure.
Selected calendar and CSV files are reviewed before import. Shared reports may include shift details and earnings you choose to include; Android's sharing chooser lets you select the recipient or app. The receiving provider's policies apply.
App-opening counts and whether sharing, review or upgrade prompts have been shown are saved locally. Upgrade suggestions also store their count and last-shown time locally and can be switched off in Settings. Sharing the app sends its public Play Store link only after you choose an app or recipient. Review navigation opens Google Play; ShiftCal does not collect the rating you submit.
Optional local diagnostics are off by default. If you enable them in Settings, ShiftCal keeps up to 500 feature-use and billing-flow events on this phone, using fixed event categories, local opaque event identifiers, times, app version and, for displayed purchase offers, the Google Play product, price and currency. This log excludes your rota text, notes, entered pay rates, purchase tokens and receipt payloads. It is separate from the Google SDK diagnostics described below and is not included in ShiftCal's file backups. It is not a verified record of sales or revenue.
There is no automatic upload of this log or developer diagnostics server. You can explicitly share its JSON export through Android's sharing chooser, choosing the receiving app or recipient; that provider's policies then apply. Successful switch-off or Clear deletes the saved local events. If saving a switch-off fails, collection stops for the current session and the app warns you to retry before closing, because the previously saved choice may return after restarting.
Home-screen widgets use a local copy of upcoming shift labels, dates and colours. Anyone who can see your home screen may see that information.
Reminders store notification text and times locally. Notification permission is optional, and notifications can appear on your lock screen depending on Android settings. Android restart, time and time-zone events help restore reminders.
Optional precise reminders use Android exact-alarm special access, with an inexact fallback. Clock integration passes the selected time and label to your Android Clock app for your confirmation. Clock alarms are managed separately from ShiftCal reminders.
If you choose to export a shift, ShiftCal passes the event title and times to your selected calendar app's event editor. You choose whether to save it. ShiftCal does not read your existing calendar. The receiving calendar service may synchronise the event under its own privacy policy. Deleting a shift in ShiftCal does not delete an exported calendar event.
The app's planning features do not request contacts, call logs, microphone, camera or precise-location permission.
Google Play processes optional lifetime purchases. The individual Widgets & Pay, Overtime Tracker and Remove Ads purchases remain separate: buying one individual product does not unlock the others. The one-time ShiftCal Pro bundle includes all three capabilities without a subscription. Existing individual purchases remain valid, and a recognised partial or full individual owner is not offered a duplicate Pro bundle purchase.
ShiftCal receives product details, purchase status and purchase tokens needed to acknowledge or restore purchases. It saves local entitlement flags to allow established access offline. Pro purchase signatures are checked on this device; there is no developer-operated purchase-verification server or ShiftCal sign-in. Refund or revocation changes require successful online reconciliation with Google Play. Buying or restoring requires internet access. Google handles payment details and transaction records; ShiftCal does not receive card numbers or banking credentials.
The Google Play Billing library also transmits billing service diagnostics to Google, including operation results and errors, device model and operating-system/build information, app version, language and country settings, network type, SIM operator and timing information. This supports operation, reliability and troubleshooting of the billing service. These diagnostic messages do not contain your locally stored rota, hourly rates or overtime notes. Google receives network request information such as your IP address when its services are contacted.
Google Play and its billing components process purchase requests and service information under Google's policies, including information used to operate and secure purchases. Google's privacy policy explains its account, device, service and transaction processing: https://policies.google.com/privacy
The free version uses Google AdMob to show a banner and occasional full-screen ads at natural breaks. Google's Mobile Ads SDK can collect and share IP addresses (which can indicate general location), app and ad interactions, performance diagnostics, and device or account identifiers such as advertising ID and app set ID. Google describes these uses as advertising, analytics and fraud prevention. This is separate from the rota, rates and notes stored locally; we do not supply those records as advertising content or targeting information.
Where required, the app presents consent choices using Google's User Messaging Platform and provides a way to revisit those choices. Declining personalised advertising does not necessarily mean that no ads or technical data processing will occur. Android also provides advertising-ID controls. A recognised Remove Ads purchase or Pro bundle stops banner and full-screen ad requests from ShiftCal; it does not delete data Google already holds or disable the separate ML Kit or Play Billing SDK diagnostics described above.
Google advertising information: https://policies.google.com/technologies/ads Google SDK data disclosure: https://developers.google.com/admob/android/privacy/play-data-disclosure
If you email us, we receive your email address, message and any attachments you send. We use them to respond, investigate issues and handle privacy requests. Please do not send passwords, payment-card details or unnecessary sensitive records.
This policy page is hosted on Google Sites. Visiting it involves Google's hosting services receiving technical request information such as your IP address and browser information under Google's privacy policy. We have not added analytics tags, advertising placements or contact forms to this page. Reading the policy does not give the site access to your local ShiftCal records.
Local app records remain until you edit or delete them, clear ShiftCal's storage in Android settings or uninstall the app. ShiftCal opts out of Android automatic cloud backup; device-to-device transfer behaviour can vary by manufacturer. Keep your own explicit file backup. There is no developer-held ShiftCal cloud copy for us to restore. Clearing storage resets local purchase flags; you may need an online purchase restore. It does not cancel purchases or erase Google's transaction records.
Delete exported events in the calendar app where you saved them and exported files or backups in their chosen location. Uninstalling ShiftCal does not remove these external copies. Google controls retention of information it processes; see https://policies.google.com/technologies/retention for its retention practices.
We keep support correspondence only for as long as needed to deal with the request, maintain necessary support records or meet legal obligations. You can ask us to delete it using the contact above. There is no ShiftCal user account to delete.
Depending on where you live, you may have rights to access, correct, delete or restrict processing of personal information, object to certain uses, obtain a portable copy, or withdraw consent. Contact us using the email above for information we hold. We cannot retrieve your device-only rota or erase records held independently by Google or your chosen calendar provider.
Where applicable, we process support information to respond to your request and operate the service, and retain information where legally required. Consent-based advertising processing will use the choices offered in the advertising-enabled app. Service providers may process information outside your country under their published safeguards. Google's transfer information is at https://policies.google.com/privacy/frameworks.
You may complain to your local data protection authority. In the UK, this is the Information Commissioner's Office: https://ico.org.uk/make-a-complaint/
ShiftCal is designed as a work-planning utility for adults, not as a children's service. We do not knowingly ask children to send personal information to us. Contact us if a child has sent personal information through support.
We will update this page when our practices change and change the date above. Material changes, including the introduction of advertising, will also be reflected in the app and store disclosures as appropriate.
For privacy questions or support: contact@theappdev.team