Loading privacy notice…

Read the notice without animation

WARM · PLAIN ENGLISH · LAST UPDATED: OCTOBER 22, 2026

What I do with your personal information

I’m Benjamin Tan, and I run ben-tan.com, my portfolio. This notice covers the whole portfolio.

That includes the pages you browse, artwork, guides, tools, and the Bending Machine. Shared practices come first, then the details for each feature.

What happens across the portfolio

First, the practices shared across the portfolio. Then, the tools and features you choose to use. These illustrations are interactive demonstrations.

Layer 1 · Across the portfolio

01 · BROWSE

Browsing the portfolio

Opening a page sends Cloudflare your IP address, the page address, and other technical request details. It uses them to deliver content and help protect the portfolio.

I use Plausible across the portfolio to measure visits, time spent, and scrolling. It doesn’t receive tool inputs, file contents, or results.

HOSTING: CLOUDFLARE · ANALYTICS: PLAUSIBLE

The details on services →

04 · EMAIL

Emailing me

If you email me, I receive your email address, message, and attachments and use them to reply and follow up. Email services deliver and store our correspondence.

I normally delete routine emails 12 months after our last meaningful email exchange. I keep messages longer for ongoing work or required records, and review those exceptions once a year.

ROUTINE EMAIL: NORMALLY 12 MONTHS · EXCEPTIONS APPLY

Layer 2 · Feature-specific activities

03 · DOWNLOAD

Tools and files in your browser

When available, Test Data Generator and PII De-identifier process your selected inputs in your browser. The tools don’t send inputs, file contents, or results to me or include them in analytics. Optional saved settings are explained in the tool section below.

Downloading hosted artwork or my resume asks Cloudflare to deliver the file. I don’t track download-link clicks.

BROWSER PROCESSING · HOSTED FILE DELIVERY

How analytics works here →

02 · PLAY RADIO

Turning on the radio

Turning on the Bending Machine’s optional radio connects your browser to SomaFM. It receives your IP address and stream-request details.

Turning it off stops the stream. It doesn’t erase information already received.

ONLY ON PLAY → SOMAFM

SomaFM, in detail →

BENDING MACHINE · WALKTHROUGH

Delete the Bending Machine’s browser record

The Bending Machine keeps a small record in your browser. This is a demonstration; it doesn’t delete your actual record. Open the Bending Machine to use the real control.

Open the Bending Machine

STEP 01 OF 04

Select item #53

Enter 53 on the Bending Machine’s keypad, then press the # button labeled ENTER. One administrative beverage, please.

Demonstration, step 1 of 4: Select item #53. Enter 53 on the Bending Machine’s keypad, then press the # button labeled ENTER. One administrative beverage, please.

The full notice

1. The whole portfolio

This notice covers ben-tan.com: its portfolio pages, artwork, guides, tools, interactive experiences, and privacy pages. The practices below are grouped by activity, with feature-specific details available where needed.

If collection, use, storage, or disclosure changes, I’ll update this notice and its date and explain relevant changes alongside the feature.

2. Hosting and analytics

Hosting and security

Cloudflare hosts, delivers, and protects the portfolio. Page and hosted-file requests send it your IP address, requested address, and other technical request details so it can deliver content and help prevent abuse.

Cloudflare privacy policy.

:See what a page request sends

Portfolio analytics

I use Plausible across the portfolio, including pages, tools, guides, and interactive experiences. It reports page views, time spent, scroll depth, and the referring site. Download clicks, external-link clicks, and form submissions aren’t tracked.

:What these measurements tell me

Plausible uses your IP address and browser details to estimate your location and count visitors within a day. Reports can include approximate location, browser, and device type. It doesn’t keep your IP address or the full browser description sent with the request. It keeps records of events and visits to calculate the overall reports I see. The daily visitor count is separate from how long those records are kept.

:How counting visitors within a day works

Anything after ? or # in a page address is left out of the reports. A referral is reported as just the site address. Tool inputs, file contents, and results are left out. Plausible doesn’t use cookies or save a visitor ID in your browser.

:See an example of the addresses reported

Plausible data policy.

3. Email and your choices

I don’t sell your personal information or share it to target ads across different sites. You don’t need to press anything to stop those activities.

When you email me, I receive your email address, message, and attachments. Email services deliver and store our correspondence. I use what you send to reply and follow up.

I normally delete routine emails 12 months after our last meaningful email exchange. I keep messages longer when needed for ongoing work or required records, and review those exceptions once a year.

:How the email period and exceptions work

The 12-month email period doesn’t apply to hosting, analytics, or radio records. Those records follow the relevant service arrangements and settings; the linked provider policies describe their practices. Plausible lets me delete the site’s analytics. An email address doesn’t let me reliably identify a particular visitor’s analytics records.

:Compare browser data, correspondence, and service records

Your choices and requests

You can clear data saved by this site through your browser settings. Browser privacy tools may block analytics requests. Clearing browser data doesn’t erase email, downloaded files, or records already held by Cloudflare, Plausible, or SomaFM.

For questions or requests about information I hold or control, including access, correction, or deletion, email hello@ben-tan.com. Tell me which feature and information you mean. I’ll explain what I can identify and what action I can take. For information kept only in your browser, use the relevant feature controls or browser settings.

:Find the right control or contact route

Links to LinkedIn, project sites, and other destinations lead to separate services with their own privacy notices.

4. Processing files and choices

Test Data Generator creates sample data and reads selected setup files in your browser. PII De-identifier processes selected files in browser memory. These tools don’t send inputs, file contents, or results to me or a processing server. Your browser creates output and setup downloads when requested. Loading the tools still makes the hosting and analytics requests described above.

:See the local processing boundary

Guide searches and choices stay in this tab’s memory. They aren’t uploaded or saved between visits. Reloading restarts the path; Copy puts the result on your clipboard when you ask.

:Guide choices and copied results

Saved records and downloaded files have separate controls below.

5. Saving work on your device

Some features save records in this browser between visits. Reloading doesn’t clear them. That’s different from temporary tab memory and downloaded files.

:Compare an open tab, saved records, and downloads

These features save browser records:

Bending Machine
Local visit and vend history.
PII De-identifier
Custom detection rules for later files. Older treatment preset data can still remain, even though that feature’s gone.
CIPT Studio
Study progress, saved notes and reflections, and separate drafts.

Saved rules, machine history, and CIPT records don’t expire on a timer. Each feature’s controls affect its own records; clearing this site’s browser data is broader. Your browser can also lose or remove stored data. Downloaded files and copies in another browser or at another address are separate.

CIPT records aren’t encrypted or protected by a Studio sign-in. Other scripts on the same portfolio origin can access them. Studio doesn’t send these records to me or automatically sync them across browsers or devices.

:See what’s saved and how its controls work

CIPT backups and imports

CIPT backup files are readable and unencrypted. The progress JSON leaves out separate drafts; draft recovery text is a separate file.

Import replaces progress instead of combining histories. If saving fails, your original saved progress and drafts stay intact. Optional tab-only recovery doesn’t save progress or draft changes; reload brings back the original saved copy.

:See what import, reset, and recovery change

The portfolio’s hosting and analytics still apply.

6. Connections, sharing, and downloads

Optional radio

Turning on the optional radio connects your browser directly to SomaFM. It receives your IP address and the request details needed to stream music. Turning it off stops the stream. It doesn’t delete information SomaFM already received.

SomaFM privacy policy.

:What the radio connection sends

Copies you choose to keep or share

Cloudflare delivers hosted files such as artwork and my resume. Tool outputs, setup files, and the machine’s record export are created locally when requested. Download clicks aren’t tracked in analytics. Clearing browser storage doesn’t remove files already downloaded; manage those wherever you saved them.

:Compare hosted and browser-generated files

You can copy or download a CIPT voice-practice brief to share elsewhere. Studio doesn’t use your microphone, record audio, call an AI or speech service, or upload transcripts.

:What the practice brief contains

Navigation and page addresses

Pages can use temporary browser state to keep navigation working. EMA search text can appear in the page address and history, a link you copy, or a request to the host. Plausible leaves it out of analytics.

:What navigation keeps and shares

COLD · TECHNICAL · LAST UPDATED: OCTOBER 22, 2026

Privacy notice

I am Benjamin Tan, and I operate ben-tan.com. This notice covers the whole portfolio, followed by the processing specific to its tools and features.

For privacy questions or requests, contact hello@ben-tan.com.

Processing by activity

Layer 1 · Across the portfolio

01 · BROWSE

Network requests and analytics

Page and hosted-file requests send Cloudflare the IP address, requested URL, and other technical request details for delivery and security.

I use Plausible across the portfolio for page views and engagement. Tool inputs, file contents, and results are excluded.

CLOUDFLARE · PLAUSIBLE

The details on services →

04 · EMAIL

Email and retention

Email services deliver and store correspondence. I receive email addresses, messages, and attachments to respond and follow up.

I normally delete routine correspondence 12 months after the last substantive exchange. Ongoing work or required records may require longer retention; I review those exceptions annually.

ROUTINE EMAIL: NORMALLY 12 MONTHS · ANNUAL EXCEPTION REVIEW

Layer 2 · Feature-specific activities

03 · DOWNLOAD

Browser tools and file transfers

Working browser-based tools process selected inputs locally. Tool inputs, file contents, and generated results are not transmitted to me or included in analytics. Optional saved settings are described in § 4.

Hosted file requests reach Cloudflare. Download-link clicks are not tracked in analytics. Locally generated tool outputs, setup files, and machine-record exports remain distinct from hosted downloads.

LOCAL INPUTS / HOSTED FILE REQUESTS

How analytics works here →

02 · PLAY RADIO

Optional radio

Enabling the optional Bending Machine radio connects the browser to SomaFM, which receives the IP address and stream-request details. Disabling it stops streaming but does not erase information already received.

TRIGGER: PLAY · RECIPIENT: SOMAFM

SomaFM, in detail →

FEATURE: BENDING MACHINE · DELETION DEMO

Delete the local browser record

This walkthrough shows how to delete the Bending Machine’s record in the current browser. It does not execute deletion.

Open the Bending Machine

STEP 01 OF 04

Enter code 53

Enter item number 53 on the Bending Machine’s keypad, then press the # button labeled ENTER.

Demonstration, step 1 of 4: Enter code 53. Enter item number 53 on the Bending Machine’s keypad, then press the # button labeled ENTER.

The full notice

1. Portfolio scope

This notice covers ben-tan.com: its portfolio pages, artwork, guides, tools, interactive experiences, and privacy pages. The practices below are grouped by activity, with feature-specific details available where needed.

If collection, use, storage, or disclosure changes, I will update this notice and its date and explain relevant changes alongside the feature.

2. Hosting, security, and analytics

Hosting and security

Cloudflare hosts, delivers, and protects the portfolio. Page and hosted-file requests send it your IP address, requested address, and other technical request details so it can deliver content and help prevent abuse.

Cloudflare privacy policy.

Portfolio analytics

I use Plausible across the portfolio, including pages, tools, guides, and interactive experiences. It reports page views, time spent, scroll depth, and the referring site. Download clicks, external-link clicks, and form submissions are not tracked.

Plausible uses IP addresses and User-Agent information to derive approximate location, browser/device information, and a daily visitor identifier. It does not store raw IP addresses or User-Agent strings. It stores event and session records to calculate the aggregate statistics shown in its dashboard. A daily identifier is not a promise that analytics records are deleted each day.

Reported page addresses exclude query strings and fragments. Referral addresses are reduced to their origin. Tool inputs, file contents, and generated results are excluded. Plausible does not use cookies or browser storage to identify visitors.

Plausible data policy.

3. Email, retention, and requests

I do not sell personal information or share it for cross-site targeted advertising. No control needs to be activated to prevent those activities.

When you email me, I receive your email address, message, and attachments. Email services deliver and store our correspondence. I use what you send to reply and follow up.

I normally delete routine correspondence 12 months after our last substantive exchange. I keep messages longer when needed for ongoing work or required records, and review those exceptions annually.

The 12-month email period does not apply to hosting, analytics, or radio records. Those records follow the relevant service arrangements and settings; the linked provider policies describe their practices. Plausible lets me delete the site’s analytics. An email address does not let me reliably identify a particular visitor’s analytics records.

Your choices and requests

You can clear data saved by this site through your browser settings. Browser privacy tools may block analytics requests. Clearing browser data does not erase email, downloaded files, or records already held by Cloudflare, Plausible, or SomaFM.

For questions or requests about information I hold or control, including access, correction, or deletion, email hello@ben-tan.com. Tell me which feature and information you mean. I will explain what I can identify and what action I can take. For information kept only in your browser, use the relevant feature controls or browser settings.

Links to LinkedIn, project sites, and other destinations lead to separate services with their own privacy notices.

4. Processing files and choices

Test Data Generator creates sample data and reads selected setup files in your browser. PII De-identifier processes selected files in browser memory. These tools do not send inputs, file contents, or results to me or a processing server. Your browser creates output and setup downloads when requested. Loading the tools still makes the hosting and analytics requests described above.

Guide searches and choices remain in temporary tab memory, without uploads or persistent storage. Reloading restarts the path. Copy places the result on the clipboard only when requested.

:Guide choices and copied results

Saved records and downloaded files follow the separate controls below.

5. Saving work on your device

Some features retain browser records between visits. Reloading does not clear them. Temporary tab memory and downloaded files are separate.

:Compare tab memory, browser records, and downloaded files

Features that save browser records:

Bending Machine
Local visit and vend history.
PII De-identifier
Custom detection rules for later files. Older, retired treatment presets may also remain stored.
CIPT Studio
Study progress, saved notes and reflections, and separate drafts.

Saved rules, machine history, and CIPT records have no automatic expiration. Feature controls affect their own records; clearing this site’s browser data is broader. Browser storage may also be lost or removed. Downloaded files and copies at another browser or origin remain separate.

CIPT records are unencrypted, without a Studio sign-in. Scripts on the same portfolio origin can access them. Studio does not upload these records to me or automatically sync them across browsers or devices.

:Record contents, retention, and deletion controls

CIPT backups and imports

CIPT backup files are readable and unencrypted. The progress JSON excludes separate drafts; draft recovery text is a separate file.

Imports replace progress rather than merge histories. If saving fails, original saved progress and drafts remain intact. Optional tab-only recovery does not save progress or draft changes; reload restores the original saved copy.

:Import, reset, and recovery details

Hosting and analytics still apply.

6. Connections, sharing, and downloads

Optional radio

Turning on the optional radio connects this browser directly to SomaFM. SomaFM receives the IP address and stream-request details. Turning it off stops the stream; it does not erase information already received.

SomaFM privacy policy.

Copies you choose to keep or share

Cloudflare delivers hosted files such as artwork and my resume. Tool outputs, setup files, and the machine’s record export are created locally when requested. Download clicks are not tracked in analytics. Clearing browser storage does not remove files already downloaded; manage those wherever you saved them.

CIPT voice-practice briefs are copied or downloaded only on request, for sharing outside Studio. Studio does not access the microphone, record audio, call an AI or speech service, or upload transcripts.

:What the practice brief contains

Navigation and page addresses

Page navigation can use temporary browser state. EMA search text can appear in the address and browser history, a copied link, or a request to the host. Plausible excludes it from analytics.

:What navigation keeps and shares

HOT · UNFILTERED · LAST UPDATED: OCTOBER 22, 2026

What I do with your personal information

I’m Ben—Benjamin Tan if the paperwork insists. I run the portfolio at ben-tan.com.

This covers the whole portfolio: pages, artwork, guides, tools, and the Bending Machine. Shared practices first; individual features next. Yup, three privacy notices for a single website.

Why? Because somewhere along the way, privacy notices that were meant to provide transparency to users suddenly became legalese walls of text to appease auditors. So, here's my solution. I'll have my cake, I'll eat it, and I'll have leftovers.

Paging self-restraint. Is self-restraint in the room?

A website. Somehow, all this paperwork.

Here’s what happens across the portfolio, followed by the individual features. The illustrations are demonstrations. I’ve made the facts dress for the occasion.

Layer 1 · Across the portfolio

01 · BROWSE

Proof that someone showed up

Cloudflare receives your IP address, requested address, and technical request details to deliver content and help protect the portfolio. It’s doing the actual work while I explain one website in three different voices.

I use Plausible across the portfolio to measure visits, time spent, and scrolling. Tool inputs, file contents, and results stay out. A page view doesn’t tell me whether you liked the page. A cruel limitation, but I shall endure.

Cloudflare · Plausible Analytics

Who gets what →

04 · EMAIL

You send things. I receive them.

Your email address, message, and attachments reach me through email services. I use them to reply and follow up. Yes, including the attachment. You put it there.

I normally delete routine emails 12 months after our last meaningful email exchange, unless ongoing work or required records need them longer. I review those exceptions once a year. The inbox isn’t a mausoleum with Wi-Fi.

Routine email · Normally 12 months after our last meaningful email exchange

Layer 2 · Feature-specific activities

03 · DOWNLOAD

Tools, files, and paperwork

When available, the tools process your selected inputs in your browser. They don’t send the inputs, file contents, or results to me or include them in analytics. Saved settings get their own explanation below.

Hosted artwork and resume downloads still ask Cloudflare to deliver a file. Download-link clicks aren’t tracked.

Tools work locally · Hosted files use Cloudflare

Downloads and analytics →

02 · PLAY RADIO

Silence was apparently unbearable

Turning on the optional radio connects your browser to SomaFM. It receives your IP address and stream-request details so it can send the music.

Turning it off stops the stream. The earlier requests can’t be recalled. I admire your determination to negotiate with the off switch.

SomaFM · Only when you turn the radio on

The radio details →

A VENDING MACHINE DEMONSTRATION. OF COURSE.

The Department of Forgetting

The Bending Machine keeps a small record in your browser. You can delete it via the Bending Machine or through your browser settings.

This walkthrough is a demonstration. This walkthrough doesn’t delete the Bending Machine’s actual browser record. To delete that record, open the Bending Machine and press DELETE on the receipt displayed by the Bending Machine. The animated stamp has a robe and a tiny gavel. The animated stamp still has no powers.

Open the Bending Machine

STEP 01 OF 04

Select item #53

Enter 53 on the Bending Machine’s keypad, then press the # button labeled ENTER. Yes, deleting four fields starts with ordering a drink.

Demonstration, step 1 of 4: Select item #53. Enter 53 on the Bending Machine’s keypad, then press the # button labeled ENTER. Yes, deleting four fields starts with ordering a drink.

Loading or restarting the Bending Machine creates a fresh record. These controls don’t erase analytics, hosting logs, emails, or information held by other services. Clearing your browser is housekeeping, not witness protection.

The full notice

1. An entire portfolio. Paperwork included.

This notice covers ben-tan.com: its portfolio pages, artwork, guides, tools, interactive experiences, and privacy pages. The practices below are grouped by activity, with feature-specific details available where needed.

If collection, use, storage, or disclosure changes, I’ll update this notice and its date and explain relevant changes alongside the feature. I build one new button, and suddenly I’m back here documenting its entire lifecycle. So, please enjoy the button. At least one of us should.

2. Who gets what

Hosting and security

Cloudflare hosts, delivers, and protects the portfolio. Page and hosted-file requests send it your IP address, requested address, and other technical request details so it can deliver content and help prevent abuse.

Cloudflare privacy policy.

:See what a page request sends

Portfolio analytics

I use Plausible across the portfolio, including pages, tools, guides, and interactive experiences. It reports page views, time spent, scroll depth, and the referring site. Download clicks, external-link clicks, and form submissions aren’t tracked.

:What these measurements tell me

Plausible uses your IP address and browser details to estimate your location and count visitors within a day. Reports can include approximate location, browser, and device type. It doesn’t keep your IP address or the full browser description sent with the request. It keeps records of events and visits to calculate the overall reports I see. The daily visitor count is separate from how long those records are kept.

:How counting visitors within a day works

Anything after ? or # in a page address is left out of the reports. A referral is reported as just the site address. Tool inputs, file contents, and results are left out. Plausible doesn’t use cookies or save a visitor ID in your browser.

:See an example of the addresses reported

Plausible data policy.

I’m trying to see whether anyone uses the portfolio. A page view is evidence that someone arrived. If I start treating it as a standing ovation, please take the dashboard away.

3. The inbox and other jurisdictions

I don’t sell your personal information or share it to target ads across different sites. No ceremonial button press is required to prevent those activities.

When you email me, I receive your email address, message, and attachments. Email services deliver and store our correspondence. I use what you send to reply and follow up.

I normally delete routine emails 12 months after our last meaningful email exchange. I keep messages longer when needed for ongoing work or required records, and review those exceptions once a year.

:How the email period and exceptions work

The 12-month email period doesn’t apply to hosting, analytics, or radio records. Those records follow the relevant service arrangements and settings; the linked provider policies describe their practices. Plausible lets me delete the site’s analytics. An email address doesn’t let me reliably identify a particular visitor’s analytics records.

:Compare browser data, correspondence, and service records

Your choices and requests

You can clear data saved by this site through your browser settings. Browser privacy tools may block analytics requests. Clearing browser data doesn’t erase email, downloaded files, or records already held by Cloudflare, Plausible, or SomaFM.

For questions or requests about information I hold or control, including access, correction, or deletion, email hello@ben-tan.com. Tell me which feature and information you mean. I’ll explain what I can identify and what action I can take. For information kept only in your browser, use the relevant feature controls or browser settings.

:Find the right control or contact route

Links to LinkedIn, project sites, and other destinations lead to separate services with their own privacy notices.

This is an inbox, not a mausoleum with Wi-Fi, and I’d rather not torture myself by eternalizing our conversation.

4. Processing files and choices

Test Data Generator creates sample data and reads selected setup files in your browser. PII De-identifier processes selected files in browser memory. These tools don’t send inputs, file contents, or results to me or a processing server. Your browser creates output and setup downloads when requested. Loading the tools still makes the hosting and analytics requests described above.

:See the local processing boundary

Guide searches and choices stay in this tab’s memory. They aren’t uploaded or saved between visits. Reloading restarts the path. Copy puts the result on your clipboard when you ask; it isn’t secretly submitting your homework.

:Guide choices and copied results

Saved records and downloaded files have their own controls below. Reload is not a universal eraser.

5. Saving work on your device

Some features keep browser records between visits. Reloading doesn’t clear them. Refresh has not been promoted to factory reset. Temporary tab memory and downloaded files are different again.

:Three places calling themselves “saved”

These features actually save browser records:

Bending Machine
Local visit and vend history. Four fields; an entire vending machine to make them feel important.
PII De-identifier
Custom rules for later files. Treatment presets are retired; their older stored data may not be. Apparently retirement doesn’t include cleanup.
CIPT Studio
Study progress, saved notes and reflections, and separate drafts.

Saved rules, machine history, and CIPT records don’t expire on a timer. Each feature’s controls cover its own records; clearing this site’s browser data is broader. Your browser can also lose or remove stored data. Downloads and copies in another browser or at another address are outside that jurisdiction.

CIPT records are unencrypted, without a Studio sign-in. Other scripts on this portfolio’s origin can access them. Studio doesn’t upload these records to me or automatically sync across browsers or devices. Another route on this same origin isn’t a security perimeter.

:Inspect the saved paperwork and its controls

CIPT backups and imports

CIPT backup files are readable and unencrypted. The .json extension is not a padlock. Progress JSON excludes separate drafts; draft recovery text is a separate file.

Import replaces progress; it doesn’t merge histories. If saving fails, your original saved progress and drafts survive. Optional tab-only recovery doesn’t save progress or draft changes. Reload returns the original saved copy. “For this tab only” is doing unusually honest work here.

:What the import actually replaces

Local storage hasn’t canceled the portfolio’s hosting and analytics.

6. Connections, sharing, and downloads

Optional radio

Turning on the optional radio connects your browser directly to SomaFM. It receives your IP address and the request details needed to stream music. Turning it off stops the stream. It doesn’t delete information SomaFM already received.

SomaFM privacy policy.

:What the radio connection sends

Copies you choose to keep or share

Cloudflare delivers hosted files such as artwork and my resume. Tool outputs, setup files, and the machine’s record export are created locally when requested. Download clicks aren’t tracked in analytics. Clearing browser storage doesn’t remove files already downloaded; manage those wherever you saved them.

:Compare hosted and browser-generated files

You can copy or download a CIPT voice-practice brief and take it elsewhere. Studio doesn’t use your microphone, record audio, call an AI or speech service, or upload transcripts. The conversation happens wherever you choose to have it.

:What the practice brief contains

Navigation and page addresses

Pages use temporary browser state to keep navigation working. EMA search text can travel in the page address, history, a copied link, or a request to the host. Plausible leaves it out of analytics. A link can carry more than your enthusiasm.

:What navigation keeps and shares