JSHJ. Scott Henderson

Plain-English disclosure · Effective September 9, 2026

Privacy & analytics.

This site is built to show work—not to quietly profile visitors. Here is what is measured, what is not, and where a contact message goes.

What this site does not do

JSH does not use advertising cookies, advertising pixels, fingerprinting, or cross-site tracking. It does not sell visitor information or use site analytics to identify individual visitors.

Cloudflare performance analytics

JSH uses Cloudflare Web Analytics / Real User Measurements (RUM) to understand how quickly public pages load and respond for real visitors. The Cloudflare browser beacon measures current-page performance information, including Core Web Vitals and page-load timing.

Cloudflare describes this measurement as cookie-free and states that the beacon does not access browser storage. It also states that a client IP received during normal request handling is discarded at the nearest Cloudflare data center and is not retained in core analytics records.

Cloudflare’s EEA/EU exclusion option is enabled for this RUM configuration. Cloudflare states that the performance beacon does not process performance data for visitors connecting through its designated EEA/EU data centers.

Contact messages

When someone submits the Contact form, JSH collects the name, email address, and message they provide, together with limited submission and security information used to detect abuse and deliver the message. This can include a submission timestamp, spam-check result, and ordinary request information available to Cloudflare and the web server. JSH uses this information only to process and respond to inquiries, troubleshoot delivery, and protect the site.

The information is sent through a private, self-hosted n8n workflow and delivered to Scott’s Google Workspace and Microsoft 365 business mail accounts. n8n is configured not to save the Contact workflow’s execution payloads for successful, failed, or manual runs; execution pruning is enabled with a seven-day maximum age as a backstop. Delivered messages remain in the business mail accounts only as long as reasonably needed to evaluate or respond to an inquiry, maintain appropriate business or security records, or meet legal obligations.

The public website does not expose a direct mailbox address, workflow URL, or credential, and the web server is not designed to keep a public-site database of contact submissions. Do not send passwords, financial information, health information, or other sensitive material through the form.

Cloudflare Turnstile

The Contact form uses Cloudflare Turnstile for spam and abuse protection. Turnstile performs browser-based security checks and produces a verification token that the server validates with Cloudflare. Cloudflare states that Turnstile does not access, store, or transmit the form entries themselves. Cloudflare’s broader security services may use strictly necessary security cookies when a challenge is required.

Your privacy choices

JSH does not track visitors’ activities over time across third-party websites for advertising purposes and does not sell or share personal information for cross-context behavioral advertising. Browser Do Not Track or Global Privacy Control signals therefore do not change the site’s operation; Cloudflare security and performance processing continues as described here.

To request access to, correction of, or deletion of a Contact message, use the Contact page. Reasonable verification may be requested, and information may be retained when necessary for security, legal, or recordkeeping purposes.

Who processes what

Cloudflare provides the public edge, security services, and the optional performance measurement described above. n8n routes contact messages; Google Workspace and Microsoft 365 receive delivered messages. This disclosure will be updated if those operational boundaries materially change. Material privacy changes will be posted here with a revised effective date; where reasonably practicable, additional notice will be provided before previously collected Contact information is used in a materially different way.

For Cloudflare’s technical detail, see its RUM beacon documentation and Web Analytics overview.