Privacy notice
Last updated: August 29, 2026
This notice covers every page served from bitsalt.com, including the client payment pages under /pay. It says what this site collects, where that goes, who else sees it, and how long it lasts.
Three places on this site ask you for something: the contact form, the newsletter sign-up at the foot of a blog post, and the payment pages we send to clients by private link. Everything else below is what a web server and a page counter record on their own.
The contact form
The form on /contact has four fields: your name, your email address, your company if you want to give it, and your message.
It writes nothing to our database. It becomes an email, sent through Mailgun, our mail provider, and delivered to hello@bitsalt.com, which is a Google Workspace mailbox.
We use what you send there to answer you. We do not add it to a mailing list.
The form carries one more field, hidden, that only automated scripts ever fill in. Whatever lands in it is thrown away before anything else happens. It is never stored and never sent on.
We have set no automatic deletion on that mailbox, so a message stays until someone deletes it. A record of the send also sits in Mailgun's log for a period set by their account settings rather than by us.
The newsletter
The sign-up box at the foot of a blog post asks for an email address, and a first name if you want to give one. Nothing is sent to you until you click the link in a confirmation email.
We store the address, the first name, a tag that is always general from this form, a token that makes your confirmation and unsubscribe links work, and the times you signed up, confirmed, and unsubscribed. That row lives in our own database.
Mailgun carries the confirmation, welcome and unsubscribe emails. When someone confirms or unsubscribes, a short notice lands in our own inbox with the first name and address in it.
Unsubscribing marks the row as unsubscribed. It does not delete it: the address and first name stay in the table. If you want the row gone, ask us and we will delete it.
The payment pages
We build, host and look after software for clients. When a client sets up automatic payment, we send them a private link to a page under bitsalt.com/pay. Those pages are live and in use today.
Card details never reach us. The card fields on that page are drawn by Stripe, our payment processor, inside Stripe's own frame served from Stripe's own domain. No card number, expiry date, security code or billing postcode is ever received, stored or logged by this site.
What we hold: the paying business's name, the email address we were given for the payer, the sites being billed and what each one costs, the time the link was first opened, the time of each payment attempt, and the identifiers Stripe gives us for the customer, the checkout session and the subscription. Those records are written when we issue the link, from a command we run ourselves.
What Stripe holds: the payer's email address and the business name, set on a Stripe customer record when we issue the link, along with the card details entered into their form and the subscription that results. Stripe's own script runs on that page and performs Stripe's fraud checks there, which is a documented part of how their checkout works.
Anyone who opens a payment link sees the email address on that payer's Stripe record. The link is a credential. Treat it like one.
Nothing in our code deletes a payment record.
Cookies
Two cookies, both ours, both there to make the site work.
laravel-session identifies your browser's visit to the site. XSRF-TOKEN is what stops a form on somebody else's site from posting to ours. Both expire two hours after they are set. Neither is used for advertising or profiling, and nothing on this site sets a cookie belonging to anyone else.
The session cookie is paired with a row in our database holding your IP address, your browser's user-agent string, and the time of your last request. Those rows are cleared about two hours after your visit. The clean-up runs at random on a small share of requests rather than on a schedule, so on a quiet day a row can sit longer than that.
The payment pages set no cookie at all.
Analytics
Every page loads a small counting script. It runs on our own server, at analytics.bitsalt.com, and it is software we host ourselves. Page-view data does not go to an analytics company.
Your browser sends the address and title of the page, the page you arrived from, your screen size, and your browser's language. If you arrived on a link carrying campaign tags, those are stored along with it.
Your IP address is used and not kept. The server uses it to work out an approximate location down to city level, and mixes it with your browser's user-agent string and a value that changes every calendar month to produce a visitor id. The address itself is never written down: there is no column for it in the analytics database.
The script sets no cookies and reads none. Its data is sent with no cookies attached.
Nothing deletes analytics rows on a schedule.
Server logs
Two logs record every request to this site.
Our web server's edge log holds the time, the site, the path you asked for, the response code, and your full IP address. It sits on our own server, is rotated daily, and holds up to fourteen days, less when traffic is heavy.
A copy goes to Grafana Cloud, where we store logs. In that copy your IP address is shortened so it points at a block of addresses rather than at yours, and any query string is dropped. That copy rolls off after roughly a month.
The application keeps its own access log with the path, the page you came from, and your browser's user-agent string. It carries no IP address at all: the only address in it is our own internal proxy's. The token in a payment link is replaced before that line is written.
Who else handles any of this
Five companies handle data in the course of running the site.
- Mailgun sends our outgoing mail, so every contact-form message and every newsletter email passes through it.
- Google, through Google Workspace, hosts the mailbox everything sent to us lands in.
- Stripe processes payments, and holds the payer email, the business name and the card details entered into its own form.
- Grafana Labs, through Grafana Cloud, stores the log copies described above.
- DigitalOcean hosts our server, our database and our backups.
Our analytics is not on that list, because it is our own software on our own machine.
Backups
Our database is backed up every night, and those copies include the newsletter and payment tables. A row deleted from the live database today still exists in the backups already taken, so removal is never instant.
Our own accounts
The site has an administrative login we use to publish content. It holds an account name, an email address, a hashed password, and two-factor credentials. Changes made through our publishing interface are logged with the account, the token used, and the address the change came from. None of that is visitor data, and it is listed here so this page is not silent about it.
What this site does not do
There is no visitor account here. Nothing to register for, no password, no login, and no way for a visitor to upload a file.
There is no advertising, no remarketing, no tag manager, no social widget and no third-party font service. The only script this site loads from an address other than its own is our own analytics, on our own server. On the payment pages, Stripe's checkout script is the second and last.
We do not sell your data, and we do not hand it to advertisers.
What has no end date
Four things here are kept with no deletion schedule at all:
- messages sent to
hello@bitsalt.com - newsletter rows, including after an unsubscribe
- payment records, and the records Stripe holds
- analytics rows
None of them is on a timer. If you want something removed, ask.
Asking us about any of this
Questions about what we hold, or a request to remove something, reach a person here:
Call843-321-8393
Emailhello@bitsalt.com
Tell us what you want to know and we will tell you what we hold and what we can remove.
When this changes
The date at the top changes when the text does. This page is kept under version control, so any earlier wording can be produced on request.