Version 0.2 — 3 November 2026 — not yet reviewed by a solicitor.
Version 0.2, 3 November 2026 · Dragnex LLC (limited liability company, registered in the United States (Wyoming), registration number EIN 37-2136997 (Wyoming Secretary of State filing ID 2024-001423059), registered office 30 N Gould St, Ste R, Sheridan, WY 82801, United States) · privacy@fossaplan.com · support@fossaplan.com
What Fossaplan stores on your device
Fossaplan sets no cookies. There are no advertising cookies and no third-party cookies. Fossaplan can send technical fault reports and anonymous usage counts to its own database; they send nothing from your device's storage, set no cookie and store nothing on your device, and the Privacy Policy, clause 3.7, describes them. Nothing on this page tracks you.
The app does store a small amount of information in your browser, because a drainage designer standing in a field with no signal still has to be able to open the app and save a job. The law that governs this is regulation 6 of the Privacy and Electronic Communications (EC Directive) Regulations 2003, which was replaced in full on 5 February 2026 and now reads: "a person must not store information, or gain access to information stored, in the terminal equipment of a subscriber or user", subject to the exceptions in Schedule A1.
Those rules are not limited to cookies. The Information Commissioner's guidance says they apply to "any technology that stores information, or accesses information stored, on a subscriber's or user's 'terminal equipment'", and names web storage among the examples. The guidance does not mention IndexedDB, service workers or the browser cache by name, but the statutory test is technology-neutral, so this notice treats every store below as caught.
Everything Fossaplan stores, by name
Browser local storage (localStorage)
| Key | What it holds | Why | How long | The rule relied on |
|---|---|---|---|---|
septicplan.session.v1 | Your sign-in session token, with your e-mail address and trading name beside it | Keeps you signed in between page loads so you are not asked for your password on every screen. Cleared when you sign out | Until you sign out or clear site data | Strictly necessary — Schedule A1 paragraph 4(2)(e)(i), "automatically authenticating the identity of the subscriber or user" |
fossaplan.signup-email.v1 | The e-mail address you typed when you created an account, until you open its confirmation link | Lets the confirmation link sign you in only in the browser where you created the account; opened anywhere else, it confirms the address and asks you to sign in. It is never sent anywhere | Until the link signs you in, or you clear site data | Strictly necessary — Schedule A1 paragraph 4(2)(e)(i), "automatically authenticating the identity of the subscriber or user" |
septicplan.entitlement.v1 | The last answer our database gave about your subscription | Lets the app open for a paying account when there is no signal. It is read from our database and never sent back | Until it is next refreshed, or you delete your account or clear site data | Strictly necessary — Schedule A1 paragraph 4(1): without it the workspace you pay for would not open offline |
septicplan.firm.<user id> | A device copy of your own firm's name, address, telephone, e-mail and logo, as saved to your account | Lets the letterhead print without waiting on the network | Until you sign out or delete your account, or clear site data | Strictly necessary — Schedule A1 paragraph 4(1): it holds the letterhead you asked the sheets to carry, so that the print you asked for can be made |
septicplan.designer, septicplan.qualification, septicplan.businessName, septicplan.businessContact, septicplan.installerName, septicplan.testedBy, septicplan.country | Seven things you last typed or picked: the designer's name and qualification, the business name and contact, the installer's name, who ran the test, and the country | Pre-fills the next job | Until you clear site data; deleting your account also removes the designer name and qualification from that device | The website-appearance and functionality exception — Schedule A1 paragraph 6: storage whose sole purpose is "to enable the way the website appears or functions … to adapt to the preferences of the subscriber or user". It requires clear information and a simple, free way to object — this page is the information; to object, clear site data |
septicplan.letterKeys | Whether single-letter keyboard shortcuts are on | Keeps the shortcuts the way you set them | Until you clear site data | Paragraph 6. To object: clear site data |
septicplan.showcaseSkip | That you dismissed the guided example | Stops the app offering it again | Until you clear site data | Paragraph 6. To object: clear site data |
septicplan.theme | Light or dark appearance | Displays the app the way you chose | Until you clear site data | The website-appearance exception — Schedule A1 paragraph 6: storage whose sole purpose is "to enable the way the website appears or functions … to adapt to the preferences of the subscriber or user". This exception requires clear information and a simple, free way to object — this page is the information, and the theme control in the app is the way to change or clear it |
septicplan.sidebarOpen | Whether the sidebar is open | Reopens the workspace the way you left it | Until you clear site data | Paragraph 6 (and, where the workspace cannot function without it, paragraph 4(2)(e)(ii)). To object: clear site data |
septicplan.inspectorOpen | Whether the inspector panel is open | As above | Until you clear site data | As above |
septicplan.fold.<id> | Whether a named panel is folded away | As above — one key per panel | Until you clear site data | As above |
septicplan.hint.undo.count | How many times an undo hint has been shown | Stops the app repeating a hint you have already read | Until you clear site data | Paragraph 6 — a functionality preference. To object: clear site data |
septicplan.hint.undo.done | That you have dismissed the undo hint | As above | Until you clear site data | As above — paragraph 6 |
The preference keys are never sent anywhere; they are read and written by the app in your own browser. Three things in this table are related to what is sent: the designer name and qualification you type into a job also go with that job; the firm copy mirrors your firm's details as saved to your account; and the subscription answer is read from our database.
Browser session storage (sessionStorage)
| Key | What it holds | Why | How long | The rule relied on |
|---|---|---|---|---|
fossaplan.signup-email.v1 | The same e-mail address as the local-storage row of that name — a second copy for this tab | As above | Until the link signs you in, or the tab closes | As above — paragraph 4(2)(e)(i) |
fossaplan.chunk-reload.v1 | That this tab has already reloaded itself once after a release | If a release removes a file the open page still needs, the app reloads once — never twice in a row | Cleared when the tab closes | Strictly necessary — Schedule A1 paragraph 4(1) |
The offline copy of your jobs (IndexedDB)
| Store | What it holds | Why | How long | The rule relied on |
|---|---|---|---|---|
Database fossaplan, object store jobs | A copy of every job you save, including the photographs and the basemap image. If two devices changed the same job, the copy that lost is kept here too, under <job id>@<timestamp> | This is what makes the app work with no signal. A job saved offline is written here and sent to the server when you are online again | Until you delete site data in your browser | Strictly necessary — Schedule A1 paragraph 4(1), storage "strictly necessary for the provision of an information society service requested by the subscriber or user", and paragraph 4(2)(e)(ii), "maintaining a record of … information put into a website" |
This copy is not encrypted by the app. If you sign in on someone else's device, clear site data before you leave it.
The offline copy of the app itself (Cache Storage / service worker)
| Cache | What it holds | Why | How long | The rule relied on |
|---|---|---|---|---|
fossaplan-shell-<build hash> | The application's own files — the page, the scripts, the styles — and nothing else | Lets the app load with no signal | Until the next release, which empties the previous cache, or until you clear site data | Strictly necessary — Schedule A1 paragraph 4(1) |
The service worker never caches anything from another site. Supabase, the Environment Agency, Ordnance Survey and Esri answer from the network or not at all. That is enforced by a test in the codebase.
Outside the browser's storage
One feature writes outside the browser altogether, so regulation 6 does not reach it, but it is listed here because it is the only thing the app puts anywhere you did not expect.
| What | Where it goes | Why | How long | The rule relied on |
|---|---|---|---|---|
| The materials and setting-out schedule, as text | Your operating system's clipboard, through navigator.clipboard.writeText | The "copy" control on the results panel, so you can paste the schedule into a quote or an e-mail | Until you copy something else, or until your device is switched off and on again — your operating system, not Fossaplan, holds it | Not device storage under regulation 6; it happens only when you press the control |
No consent banner
Every item above is either strictly necessary for the service you asked for, or is the website-appearance and functionality case. Neither needs consent under Schedule A1, so Fossaplan shows no cookie banner. The appearance exception does require "clear and comprehensive information about the purpose" and "a simple means of objecting, free of charge" — this page is that information, and the ways to object are below.
How to see it, change it or clear it
- Sign out. This clears the session key and the firm copy.
- Delete your account. Account → Delete account also clears, on that device, the offline copy of your jobs, the subscription answer, the firm copy and the designer name and qualification.
- Change the appearance. The theme control in the app writes the theme key; setting it back to the system default and clearing site data removes it.
- Clear everything. Every browser has a "clear site data" or "cookies and site data" control for a single site. Clearing it for Fossaplan removes all the local storage keys, the IndexedDB copy of your jobs and the app cache. Your jobs on the server are not affected — they are held in your account and come back when you sign in. A job you saved while offline and had not yet sent to the server would be lost, so send it first.
- Delete a job for good. Deleting a job in the app deletes it from the server. Clear site data afterwards if you also want the offline copy gone.
- Private or incognito windows discard all of it when the window closes, and the app will be slower to load and will not work offline.
Data protection, separately
Storing something on your device is one question; what Fossaplan does with personal data is another, and it is answered in the Privacy Policy and in the Data Processing Addendum. In short: Fossaplan is the controller of your account data, and the processor of the job content you put into the product.
Fault reports and usage counts
Fossaplan can send technical fault reports and anonymous usage counts to its own database. Neither stores anything on your device, and neither reads anything from your device's storage, so regulation 6 is not engaged by them. What each one sends, and what it never holds, is in the Privacy Policy, clause 3.7.
- Fault reports. If a fault report ever needed to store or read something on the device, the question would be whether the strictly-necessary exception carries it — Schedule A1 paragraph 4(2)(d), "to prevent or detect technical faults in connection with the provision of the service requested".
- Usage counts. If they ever needed device storage, they could rely on the statistical-purposes exception in Schedule A1 paragraph 5 only if their sole purpose is improving the service, the information is not shared except to make those improvements, this page explains it, and you are given a simple free way to object. The Information Commissioner draws the line at monitoring or tracking individual visitors.
- A third-party script that set its own cookies would need a consent banner. Fossaplan has none and would rather not have one.
The stakes have gone up: since 5 February 2026 a breach of regulation 6 attracts the higher maximum penalty of £17.5 million or 4% of worldwide turnover, not the old PECR ceiling.
Changes to this notice
Version 0.2, 3 November 2026. Since version 0.1 (7 September 2026): every key the app writes is now listed, including the session-storage key; the cache row and the offline job copy match the code; and fault reports and usage counts are described. Any change will be published here with a new version and date, and — for anything that adds a store or changes a purpose — before the change takes effect.