This website
- No cookies are set. None at all — not analytics, not preferences, not “essential” ones. That is why there is no consent banner interrupting you: there is nothing to consent to.
- A page counter, and only that. I count page views, because otherwise I am writing this site blind. It is Vercel’s, it sets no cookie, and it is served from this domain rather than from anyone’s CDN. What I can see is the number of views per page, and the country, device type, browser and referring site in aggregate. There is no Google Analytics, no pixel, no session recording, no heatmap, and no way for me to pick you out of the count. To avoid counting one person twice Vercel derives a device identifier from the request on its own servers; it never reaches me, and their privacy policy governs it.
- No third-party requests. Fonts, styles, images, scripts and every demo are served from this domain — the counter above included. Nothing is fetched from a CDN, a font service, an embedded video or a chat widget. This is the claim the rest of the site rests on, so it is the one worth checking first.
- No account, no login, and one form. The contact form, on the contact page and at the foot of the dashboards page, is the only place on this site where anything can be submitted. Both copies post to the same place on this domain rather than to a form service, and what happens to it is set out below.
Open your browser's devtools, switch to the network tab, and reload any page on this
site including the dashboards. Every request goes to this domain and nowhere else.
On this page you will see one for /_vercel/insights/ — that is the counter, and
you will notice it starts with a slash rather than someone else's hostname.
Then check the application tab for cookies and local storage. Both are empty.
On a demo there is no counter request either, and the
content-security-policy header on those pages still says
connect-src 'none' — the browser would refuse to send one.
What is recorded anyway
The site is static files hosted on Vercel, which keeps standard server logs — IP address, timestamp, the page requested, and the user-agent string. That is a normal part of serving a web page and it happens for any website you visit. I do not connect those logs to anything, do not use them to build a profile, and do not export or share them. Vercel's own retention policy governs how long they persist.
The page counter described above runs on the same infrastructure and is the only thing added on top of those logs. It records the page, and the country, device type, browser and referrer that Vercel derives from the same request the logs already contain — so it tells me which pages are worth keeping, and nothing about you that serving the page had not already disclosed.
Vercel is therefore the only third party involved in serving this website. Booking a call, emailing me, or using the contact form involves others — those are the three sections below.
The demo dashboards
Each demo is a single self-contained file. It sends nothing anywhere, and every figure in it is synthetic sample data generated by a seeded script. There is no real client data in any of them, and none is reconstructable from them.
The demos carry no page counter. The counter is on the site pages only — deliberately, because a dashboard that phones home is a different product from the one I am selling, and I would rather not know which demo you opened than weaken that.
If you download one and open it offline, it works exactly the same — which is the whole point of how they are built.
If you book a call
The booking link goes to Calendly, which is a separate service with its own privacy policy and its own cookies. That is why it is a link out rather than a widget embedded on this page — so nothing loads from Calendly unless you actively choose to go there.
If you book, Calendly passes me your name, email address and whatever you write in the booking notes. I use it to hold the meeting and to reply to you. I do not add you to a mailing list, because there is no mailing list.
If you email me
I keep the correspondence for as long as it is useful and then I do not. If we work together, how your company's data is handled is a much longer document — that is the security & deployment page, and it is the one worth reading.
If you use the contact form
It collects your email address, whatever you write in the message box, the role and dates if you are a recruiter and choose to fill that field in, and a file if you choose to attach one. Nothing else. There is no hidden field recording where you came from, and no cookie is set at any point.
It posts to this domain. A small function running in Frankfurt then hands the message to Resend, an email provider, which delivers it to my inbox. Resend is a second processor alongside Vercel, and it is there because the form has to become an email somewhere. Nothing is written to a database, and no copy is kept anywhere but my mailbox.
Your browser talks only to this domain throughout. Resend is called by the function, never by the page — so the network tab stays as empty of other names while you use the form as it is everywhere else here.
Afterwards it is treated exactly like email: I keep it for as long as it is useful and then I do not. An attached file is treated the same way, and you can ask me to delete either at any time. If you would rather not use it at all, the address below reaches the same inbox.
Who is responsible
This site is published by Andrew Ryan, an independent consultant working as a sole trader established in Belgium (enterprise number BE 0800.906.729 — that link goes to the official Belgian register, so you can check it rather than take my word for it).
I am the data controller for everything described on this page — there is no company behind me to escalate to, which cuts both ways and you should know it. Reach me at hi@andrewryan.consulting; it is a real inbox, not a ticket queue.
The site itself is hosted by Vercel Inc., 340 S Lemon Ave #4133, Walnut, CA 91789, USA.
Your rights, and how to use them
Under UK and EU GDPR you can ask what personal data I hold about you, ask for a copy, ask for it to be corrected, or ask for it to be deleted. Email hi@andrewryan.consulting and I will act on it. In practice, for a website visitor, the answer to the first question is almost always “nothing beyond what your visit left in a server log, and a page view added to a count”. Neither is stored against your name, so for the counter in particular there is genuinely nothing for me to look up, correct or delete on request — which is a consequence of counting this way rather than a refusal.
If you are unhappy with how I have handled a request, you can complain to your national data protection authority.
Changes
There is no mailing list to notify, so if this page changes materially the date below changes with it. Last reviewed: September 2026.
Twenty minutes, no pitch.
Bring the problem and, if you have one, a file. Worst case you get a straight answer about whether this is the right approach at all.