GlanceKit
Privacy Policy
Effective: August 10, 2026
GlanceKit builds widgets for your iPhone Lock Screen and Home Screen. It has no accounts and no server. Purpose Software LLC operates no backend for GlanceKit, so in normal use we receive no data about you at all. What you create stays on your device. When a widget needs live data, your phone asks the source directly.
This policy explains exactly what that means, including the parts that are less flattering — chiefly that the sources you choose can see your IP address. It was written against the shipping code rather than from a template.
The short version
- GlanceKit has no sign-in, no registration, and no user profile.
- We run no server. Nothing you create is sent to Purpose Software — there is nowhere for it to go.
- The app contains no analytics SDK, no crash reporter, no advertising, and no tracking. It links zero third-party code of any kind.
- We do not sell or share your personal information. We do not have any.
- Widgets fetch live data from your device, straight to the source you picked. That source sees your IP address.
- Location is optional and asked for once, in one place. You can use weather without ever granting it.
- API keys you provide are kept in the iOS keychain and are only ever attached to requests to the address you pointed that widget at.
- Purchases go through the App Store. Your payment details never reach us.
No account
GlanceKit has no sign-in, no registration, and no user profile. You never give us an email address, and the app never creates an identifier for you.
There is no advertising identifier, no vendor identifier, no install id, and no pseudonymous user id anywhere in GlanceKit. Nothing links one session to another, or this app to any other app.
Because there is no account, there is nothing on our side to log into, nothing for us to lose in a breach, and nothing about you for us to hand over to anyone.
What stays on your device
Everything you configure lives in a private container on your iPhone, shared only between GlanceKit and the GlanceKit widget. The files are encrypted by iOS and readable only after you have unlocked your phone at least once since it restarted — that is what lets a widget show your data on the Lock Screen without exposing it to anything else.
- Your LockInfos. The name, the type, and the full configuration: weather place and coordinates, crypto asset and currency, ticker symbol, currency pair, RSS feed address, custom API address and settings, countdown date and event name, custom text, schedule rules, theme, and refresh preference.
- Cached values. The last result each source returned, already turned into the text a widget displays. Entries are discarded after 24 hours. They are filed under a one-way hash of the configuration rather than under a readable address, specifically so that a custom API address carrying a key in it never sits in a cache file in plain text.
- API keys you have supplied, in the iOS keychain — never in the settings file and never in the data file.
- Preferences. Appearance, haptics, default units, default clock style, default refresh policy, whether onboarding is done, whether local event logging is on, and a copy of your free/Pro status so the widget knows whether to keep refreshing.
- Recent widget previews. The last value each widget actually rendered, up to 24 of them, so the widget gallery can preview something real instead of placeholder text.
- If the data file ever fails to load, a copy of it is set aside rather than deleted, so a problem can be diagnosed instead of silently losing your work.
What leaves your device
Only what a source needs in order to answer, and only if you create a LockInfo that uses that source.
Countdowns, clocks, custom text, and schedules are computed entirely on your phone. Your LockInfo names, your custom text, your event names, and your dates are never transmitted anywhere, to anyone, under any circumstances.
For the network-backed types:
- Weather— the latitude and longitude saved on that LockInfo, truncated to four decimal places, to api.met.no (the Norwegian Meteorological Institute).
- Naming a location— if you use Use Current Location, the coordinates are also sent to Apple’s geocoder to turn them into a city name. See Location below.
- City search— the text you type in the location picker, plus your device’s language code, to geocoding-api.open-meteo.com. It runs only in the app, only after the second character, and no more than once every 350 milliseconds. The widget never performs a search.
- Crypto— the asset name and currency code, plus your own CoinGecko key, to pro-api.coingecko.com. The key travels in a request header rather than in the address, so it does not end up in a server’s URL logs.
- Stocks— the ticker symbol, plus your own Finnhub key in a request header, to finnhub.io.
- Exchange rates— two three-letter currency codes and a date range, to api.frankfurter.app (and api.frankfurter.dev for the catalogue templates), which publishes European Central Bank reference rates. No key, no identifiers.
- News— a plain request to the exact feed address you entered, and nothing else. GlanceKit adds no query parameters, sends no cookies, and reads only the feed’s title, the newest headline, and its link.
- Data Source (custom API)— a request to the address you chose, with any placeholders filled in from values you typed, and your key attached in whichever way you selected. This includes the fifty-five built-in templates, which point at roughly forty different providers; the app shows each one’s exact address before you add it.
- Purchases— product lookups, purchase, and restore, handled by the App Store. See Purchases below.
Your IP address
This is the part most privacy policies leave out, so we will be blunt about it. GlanceKit has no server in the middle. Every request above is made by your iPhone, directly to the source.
That means the operator of that source can see your IP address, the rough location an IP implies, the time of the request, and what you asked for — exactly as if you had typed their address into Safari. We cannot see any of this, and we cannot stop them from seeing it. What each of them does with it is governed by their privacy policy, not ours. Several of them are outside your country.
Requests continue on a schedule for as long as a widget is placed, even when GlanceKit is closed. That is how a widget stays current. The pace is capped: at least 30 minutes between feed fetches, 15 minutes for weather and crypto, and 60 minutes for daily reference rates, and a failed request backs off instead of retrying.
Some limits we do apply: every request must use HTTPS, and a plain http address is refused. The app stores no cookies and keeps no HTTP cache. GlanceKit attaches no identifier of its own to any request. It does identify itself by name, because several providers require it, but that name says nothing about you.
If you would rather a particular organisation never saw a request from you, do not create a LockInfo that uses them. On-device types never touch the network at all.
Location
GlanceKit asks for your location in exactly one place: when you tap Use Current Location while setting up a weather LockInfo. It never asks during onboarding, never on launch, and never in the background.
The permission requested is while-you-use-the-app only, and the app takes a single fix rather than tracking you — it asks iOS for roughly kilometre accuracy, though iOS may return a better fix than that. There is no always-on permission, no background location, and no significant-change or region monitoring. The widget has no location capability whatsoever.
Your location does leave your device, in two ways, and we want to be exact about that:
- The fix is passed to Apple’s geocoderto turn coordinates into a city name, so your widget can say a place instead of a pair of numbers. That is a network call to an Apple service, carrying the coordinate at full precision, and it is covered by Apple’s privacy policy rather than this one.
- The coordinates, truncated to four decimal places, are sent to api.met.noevery time the weather refreshes — not once, but on every refresh, for as long as that widget is placed.
Once resolved, the place — its name, region, country, coordinates, and time zone — is saved on that LockInfo on your device, so the widget can fetch weather without waking a location manager on your Lock Screen. It is not re-resolved unless you ask.
You can avoid location entirely. Searching for a city by name gives you the same weather widget without ever seeing a permission prompt. That path sends the text you type to Open-Meteo instead of sending your coordinates to anyone. To remove a stored location, edit or delete the LockInfo that holds it; you can also revoke the permission in iOS Settings at any time.
API keys
GlanceKit ships no API keys of its own. Every credential in the app is yours, obtained by you from the provider, on your own account and quota. Some providers appear in the app in their paid form because their free tier is not licensed for use in an app that is sold — that is a licensing constraint, not an upsell.
Where keys are kept.In the iOS keychain, as a generic-password item in a keychain group shared between the app and its widget, readable after the first unlock so a widget can refresh while your phone is locked. They are never written to the settings file or the shared data file, and never logged — when a keychain write fails, only the numeric error code is recorded. They are not synced to iCloud.
Where keys go. The Crypto and Stock keys go to one fixed address each: pro-api.coingecko.com and finnhub.io. A key you enter for a Data Source is filed against that widget rather than against a particular provider, and GlanceKit attaches it to whatever address that widget is currently pointed at, in the header or query parameter you chose.
Two consequences worth knowing. If you later repoint a Data Source at a different provider, the key you entered earlier will be sent to the new address — clear the key field first. And GlanceKit follows ordinary HTTP redirects, so if a source you chose redirects to another host, a key sent as a header follows the redirect.
For a custom data source you choose how the key is attached. A request header is the more private option. A query parameter puts the key into the address itself, where it can land in the receiving server’s access log; the app says so at the point where you choose. Either way the key is added at the moment of the request and is never part of what is saved to disk.
Removing keys.Deleting a custom data source LockInfo deletes its key with it. The Finnhub and CoinGecko keys are removed by you, with the Remove button in Settings → Data Sources — deleting the last crypto or stock widget does not remove them automatically.
Addresses you enter
If you add a News LockInfo, the feed address you paste is stored on your device as part of that LockInfo, and requested from your device on a schedule. If you add a Data Source LockInfo, the same is true of the API address, along with any placeholder values you typed into it — a repository name, a station id, a username, a search term, a set of coordinates.
We never see any of it. The publisher or API operator at the other end sees the request, and sees your IP address with it. Choosing an address is choosing who to talk to.
Both features are HTTPS-only. Responses are size-capped — 2 MB for a feed, 512 KB for an API — and only the specific fields you configured are read out of them.
Third-party content
A widget can show text that came from someone else: a headline and the publisher’s own name, a Wikipedia summary, a government data figure, a package download count, or whatever a JSON API you chose returns. That content belongs to its source and is shown with attribution.
Tapping a news widget opens the publisher’s article at the publisher’s own address, in Safari. The link is used exactly as the feed supplied it — never rewritten to a reader mode, a mirror, or anything that steps around a paywall. GlanceKit never shows an article body or an archived copy.
GlanceKit loads no images from the internet and contains no web view. Every icon is a system symbol chosen from a fixed list built into the app.
Analytics
GlanceKit contains no analytics SDK, no crash reporter, no advertising SDK, no attribution SDK, and no A/B testing framework. The app links no third-party code at all.
What does exist is a small set of event counters, and they never leave your phone. When the setting is on, the app writes a line to the iPhone’s own system log recording one of thirteen fixed event names — such as a widget being created, a paywall being viewed, or a fetch failing — together with a coarse type like “weather” or “crypto”, and for failures, the kind of failure. Nothing is uploaded, because there is nowhere to upload it to. No text you wrote, no event names you chose, no coordinates, no prices, and no keys are ever recorded.
These entries are readable only by someone physically holding your unlocked device and attached to a Mac. They age out under iOS’s own log retention, which we do not control. The setting can be turned off in Settings, under Privacy. Either way, no data reaches us.
Purchases
GlanceKit Pro is sold as a monthly subscription, an annual subscription, or a one-time lifetime purchase. All of them are handled by the App Store. Your payment details never reach us. Apple processes the transaction and tells the app only whether an entitlement is valid; the app stores nothing but a free-or-Pro flag on your device.
RevenueCat, Inc. is our billing and entitlement provider. It verifies each purchase with the App Store and keeps your subscription status current, which is how the app knows whether Pro is active. RevenueCat receives an anonymous app-installation identifier it generates for your device, the transaction, the product identifier, and basic device and platform information. It does not receive your name, your email address, your payment details, or anything you configured in GlanceKit — no LockInfo, no API key, no location, no feed address. RevenueCat’s own privacy policy governs what it does with the data it holds.
Restoring a purchase asks the App Store to re-check what your Apple Account owns. Subscriptions are managed in your Apple Account settings, not by us, and we cannot cancel or refund one on your behalf. If a Pro subscription lapses, widgets you already placed keep showing their last saved value, marked as out of date, rather than going blank.
What we never do
- We never ask you to create an account, and we never collect an email address, name, or phone number.
- We never send what you create to a Purpose Software server, because we do not run one for GlanceKit.
- We never sell your personal information, share it for cross-context behavioural advertising, or trade it with data brokers. We hold none.
- We never show ads, and there is no advertising code in the app.
- We never create or read an advertising identifier, a vendor identifier, an install id, or any other cross-app or cross-session identifier.
- We never track your location in the background, and never ask for always-on location.
- We never make a request over plain http.
- We never store cookies or a persistent web cache.
- We never build an API key into the app.
- We never transmit your custom text, countdown names, target dates, or LockInfo names.
- We never load a remote image or open a web view.
- We never bundle news publishers, show article bodies, or route a link around a paywall.
Children
GlanceKit is a general-audience utility. It is not directed at children, and it does not knowingly collect personal information from anyone of any age — there is no mechanism in the app that would collect it.
Two features deserve a parent’s attention. News and Data Source fetch content from an address the user enters, and GlanceKit does not review what comes back. Tapping a news widget opens that publisher’s article in Safari. A parent setting up a device for a child may prefer to stick to countdowns, clocks, weather, and custom text, all of which are computed on the device and reach nothing external.
Keeping and deleting data
We keep nothing, because we receive nothing. There is no account to close and no deletion request to file with us — a request would return an empty answer. On your device, you are in control of all of it:
- Deleting a LockInfo removes its configuration, its cached value, its saved widget preview, and — for a custom data source — its API key.
- Cached values are discarded automatically after 24 hours, whether or not you do anything.
- The Finnhub and CoinGecko keys are removed with the Remove button in Settings → Data Sources.
- Deleting GlanceKit from your iPhone removes the app’s container, which is where every LockInfo, cached value, preview, and preference lives. If you want to be certain no stored credential remains, remove your saved API keys in Settings before you delete the app.
- Data already sent to a source — a weather request, a feed fetch — is held by that organisation under their own policy, and we cannot reach it. Purchase records are held by Apple and RevenueCat under theirs.
Your rights
Depending on where you live, you may have the right to access, correct, export, or delete the personal data a company holds about you, and to object to its processing. Under the GDPR, the UK GDPR, the CCPA and similar laws, those rights apply to Purpose Software LLC as they would to anyone.
In GlanceKit’s case the answer is simple: we hold no personal data about you, so there is nothing to produce, correct, export, or erase. Everything is on your device, visible in the app, editable by you, and deletable by you. That is not a technicality we are hiding behind — it is the design of the product.
We have never sold personal information and never shared it for cross-context behavioural advertising, and we will not start without changing this policy first and saying so.
For purchase data, exercise your rights with Apple or with RevenueCat, who are the parties holding it. For your data on other services, contact the operator of that service directly — for example the publisher of a feed you subscribed to.
If you have a question, or believe we hold something we say we do not, write to contact@purpose-company.com. If you are in the EEA or the UK, you also have the right to complain to your local data protection authority.
Changes
If this policy changes, the revised version is published at this address with a new effective date at the top. If a change means GlanceKit starts collecting something it does not collect today, or starts sending data somewhere it does not send it today, we will say so plainly in the app before the change takes effect — not only on this page.
Contact
GlanceKit is made by Purpose Software LLC. Privacy questions, and anything else: contact@purpose-company.com. A real person reads it.