Privacy Policy
Last updated 30 July 2026
Azphalt has no user accounts and sets no cookies. You can browse the store and download free extensions without identifying yourself in any way. The website runs no analytics at all; the Android app includes Firebase Analytics, which is described below.
This policy covers the Azphalt store at azphalt.store, the documentation site at azphalt.org, and the Azphalt Android app. It explains what is collected, what is deliberately not collected, and which third parties are involved when you pay for something.
What we do not collect
- No cookies. The store and its API set no cookies at all — not for sessions, not for preferences, not for tracking.
- No analytics on the website. There is no analytics SDK, tag manager, tracking pixel or session recorder on
azphalt.store. The Android app is different and is described below. - No advertising identifier. Neither the site nor the app reads your device advertising ID or Android ID. The app removes the advertising permissions that Firebase would otherwise add, and switches that collection off in the SDK as well.
- No advertising. Azphalt shows no ads, has no advertising partners, and does not share anything for ad targeting or measurement.
- No accounts. There is nothing to sign up for. Browsing, searching and downloading free extensions require no identity.
- No browser storage. The store does not write to
localStorageorsessionStorage. - No access to your work. Azphalt never receives the images, video, audio or projects you use extensions on. Extensions run inside your own app, on your own device.
What is collected
Server logs
The store is hosted on Vercel, which keeps standard web-server logs of requests — including IP address, timestamp, requested URL and user-agent. These are operational records used to keep the service running and to investigate abuse. They are not linked to an identity, because there is no identity to link them to.
Ratings, reports and download counts
If you rate a package or file an abuse report, that submission is recorded against the package, not against you — no identifier of the submitter is stored. Download tallies are aggregate counters.
These live in the running server’s memory and are reset whenever the store is redeployed. They are not written to a database and are not backed up.
One exception is worth stating plainly: an intellectual-property claim can optionally include a claimant field. That field is provided by you, and only if you choose to identify yourself. Anything you type into it is stored with the claim.
App usage (Android app only)
The Android app includes Firebase Analytics, a Google service, so we can see how many people install the app and which parts of it get used. The website has no equivalent and gets none of this.
What Firebase sends to Google from the app:
- An app-instance ID — a random identifier created when you install the app. It is not your device ID and not an advertising ID; deleting the app’s data or uninstalling it destroys it, and a reinstall gets a new one.
- Device and app information — device model, operating-system version, app version, language, and an approximate region derived from the IP address (the IP itself is not retained by Analytics).
- Usage events — first launch, sessions, screens viewed, and in-app purchase events reported by Google Play.
What it does not send: your advertising ID, your Android ID, your name or email, the other apps on your device, or anything you make with an extension. Which extensions you browse or download is not reported to Analytics as identifiable activity.
Google processes this data as described in Firebase’s privacy documentation. If you would rather not send it, browse the same catalogue on the web at azphalt.store, which has no analytics.
Install counts
An app that fetches extensions through Azphalt can tell us that an install happened, so a developer can see how many installs their extension has. What is recorded is a count against the extension — a number going up — and nothing else.
There is deliberately no way for those reports to identify you:
- They carry no device id, no advertising id, no install id, no account — no value of any kind whose purpose is to link two reports together.
- They never carry a list of what you have installed. One report says “an install of this extension happened”, not “here is this device’s library”.
- They never carry the names of other apps on your device, or anything you made with an extension.
A report has to present a one-time token that we issued with the download itself, which is how a count stays tied to a real download rather than to anyone who felt like sending us a number. The token is random, is stored with no record of who received it, and works once.
Like the ratings and download tallies above, these counters live in the running server’s memory and reset whenever the store is redeployed.
Because none of this identifies a device, we can count installs and uninstalls but cannot measure how many devices have an extension right now. We do not publish a figure claiming otherwise. The rules above are written down as a specification the store and any app using it must follow, not just a policy statement.
What an app tells the store on your device
Separately, and without anything leaving your device, an app can tell the Azphalt app which extensions it already has — installed, switched off, downloaded but not installed — so the store can show Open or Update instead of offering you something you already own. That exchange happens between two apps on your phone. It is not sent to us, and the Azphalt app is forbidden from looking at your installed apps to discover it: it only ever learns from an app that deliberately opens the store.
Purchases
Azphalt never sees or stores your payment-card details. Payment is handled entirely by a payment provider:
- On the web — by Stripe. Checkout happens on Stripe’s own pages. The store sends Stripe the item and price; Stripe handles the card.
- In the Android app — by Google Play Billing. The app receives a purchase token from Google and sends it to the Azphalt registry to confirm the purchase is genuine. The token identifies the transaction, not you.
What Azphalt records for a purchase is a licence: which package was bought and an opaque buyer identifier. Your name, email address and billing address are held by the payment provider, not by Azphalt.
Licences are issued as signed tokens your app can verify offline. Using a paid extension does not phone home, so we do not learn when or how often you use anything you bought.
Sellers
If you sell extensions, payouts run through Stripe Connect. Stripe collects the identity and bank details it needs to pay you and to meet its legal obligations. Azphalt stores the resulting Stripe account reference so it knows where to route your earnings — it does not receive or store your bank details.
The Android app
The Azphalt Android app requests internet and network-state access, to reach the store; billing, to purchase paid extensions; and a small number of background permissions that Firebase Analytics adds for its own use — keeping the device awake long enough to upload a batch of events, and reading the Play install referrer. It requests no access to your files, camera, microphone, contacts, or location, and no advertising permissions.
When another app asks Azphalt to fetch an extension for it, Azphalt is told which app is asking — so it can show only extensions that app can use, and so it can tell you who it is acting for. It hands back the extension file and nothing else. It does not report your installed apps or your activity in them.
Extensions themselves
Code extensions run in a sandbox with no network access, no filesystem access outside their own package, and no access to your device’s sensors. An extension cannot send your work anywhere, because it cannot reach anywhere.
Two categories are different, and are labelled as such in the store:
- Companion apps are separate applications with their own permissions, granted by you to that app. You are asked before anything is handed to one.
- MCP servers connect to a service you configure. Their operator’s privacy practices apply, not ours.
Who else receives data
- Vercel — hosting and server logs.
- Stripe — web payments and seller payouts.
- Google — Play Billing for in-app purchases, Play distribution, and Firebase Analytics in the Android app.
- GitHub — where extension source and the store’s own code are hosted. Contributing is public by nature.
Azphalt does not sell data, does not share it for advertising, and has no advertising partners.
Your rights
Because there are no accounts and almost nothing is retained, most data-subject requests have no data to act on — there is no profile to export or delete. Where something does exist, such as a purchase licence or a claim you submitted, you can ask us to provide or remove it.
For payment records, contact the payment provider directly; they hold that data and can act on it.
For the app’s analytics, the identifier everything is keyed to is destroyed by clearing the app’s data or uninstalling it, which leaves the past events with nothing to link them to. Ask us if you would like the underlying records deleted as well.
Children
Azphalt is not directed at children under 13 and does not knowingly collect their data. Some extensions are flagged by their developers as adult content and are age-gated in the store.
Changes
If this policy changes, the date at the top changes with it. The history of this page is public in the store’s repository, so any change is visible as a diff.
Contact
Questions about this policy, or a request about your data: hereliesaz@gmail.com.