Available in English only

This privacy policy is available in English only. The English version is the legally binding text. For translation assistance or accessibility support, email sangmlee23@gmail.com.

privacy · last updated 2026-05-02

Privacy Policy.

I keep what you give me, store it for the period below, never sell it, delete on request, and disclose every processor I use. If anything here is unclear, email me at sangmlee23@gmail.com and I will fix it.

01controller

Who I am, how to reach me.

I am the data controller for everything collected through smlee.dev. That means the legal responsibility for handling your data sits with me directly, not with an agency or holding company.

ControllerSangmin Lee (sole proprietor)
Sitehttps://smlee.dev
Contactsangmlee23@gmail.com
Postal addressPending. A physical mailing address will be added before the smlee.dev newsletter starts sending (CAN-SPAM and GDPR Art. 13 require it for marketing email).
02data collected

What I collect, per form.

Three forms exist on this site. Each one collects the minimum it needs to do its job. No tracking pixels in emails. No fingerprinting. Server-side IP and User-Agent are captured for spam attribution only.

FormFields you give meCaptured server-side
Free Scan (/scan)URL, email, optional companyIP, User-Agent
Contact (/#contact)Name, company, URL, message, emailIP, User-Agent
Subscribe (footer)EmailIP, User-Agent
03lawful basis

Why I am allowed to process this (GDPR Art. 6).

Each processing activity has exactly one lawful basis. I do not stack bases or fall back on legitimate interest where consent is the correct ground.

ActivityLawful basisArticle
Subscribe (newsletter signup)Explicit consent (opt-in)Art. 6(1)(a)
Contact form submissionLegitimate interest (you asked me to respond)Art. 6(1)(f)
Free Scan requestLegitimate interest (you requested the service)Art. 6(1)(f)
IP / User-Agent capture on form submissionsLegitimate interest (spam and abuse prevention)Art. 6(1)(f)
Analytics cookies (GA4)Consent (banner must be accepted before any GA4 script loads)Art. 6(1)(a) + ePrivacy
LocalStorage for lens UI stateStrictly necessary (no consent required)ePrivacy exemption
04retention

How long I keep things.

Retention is tied to the reason for processing. Once the reason ends, the data is deleted. You can ask me to delete sooner (see section 09).

DataRetentionWhy
Contact submissions (name, email, message, URL)24 months from last interactionEngagement context, repeat-client continuity
Scan submissions (URL, email, optional company)24 months from last interactionDiagnostic continuity if you return for a follow-up
Subscribe (email)Until you unsubscribeConsent-based; one-click unsubscribe ends retention
IP / User-Agent on form submissions90 daysSpam and abuse attribution window
Analytics (GA4, if consented)GA4 default (currently 14 months at the property level)Aggregate measurement only; no identifiers retained beyond GA4 defaults
Server logs (Vercel)Per Vercel defaultsOperational, security, and uptime diagnostics
05sub-processors

Third parties that touch your data.

Every processor I rely on is listed below. If I add one, I update this page before it goes live. Each is bound by the relevant processor agreement (DPA) and is certified under the EU-US Data Privacy Framework.

ProcessorRoleLocationTransfer mechanism
VercelHosting, edge network, server logsUnited StatesEU-US DPF (SCCs as fallback)
Google Workspace + Apps Script + SheetsForm-submission storage, email delivery, automationUnited StatesEU-US DPF (SCCs as fallback)
SlackInternal notifications when forms are submittedUnited StatesEU-US DPF (SCCs as fallback)
Google Analytics 4Aggregate analytics (loaded only after explicit consent)United StatesEU-US DPF (SCCs as fallback)
06international transfers

How data leaves the EU / UK.

All processors above are based in the United States. The primary transfer mechanism is the EU-US Data Privacy Framework (and the UK extension to it). Where DPF coverage is unavailable for a given transfer, Standard Contractual Clauses (SCCs, 2021 modules) plus supplementary measures apply as the fallback. Each processor's current privacy notice is the authoritative source for their posture:

07cookies + localstorage

Every storage key on this site.

The full inventory. Strictly necessary keys load on every page. Analytics cookies load only after you accept the consent banner. If your browser sends a Global Privacy Control (GPC) signal, analytics are treated as not-consented automatically (see section 11).

NameTypePurposeDurationCategory
smlee.lenslocalStorageLens-mode UI preferencePersistent (until cleared)Strictly necessary
smlee.lens.panel.hlocalStorageLens panel height preferencePersistent (until cleared)Strictly necessary
Consent statelocalStorageRecords your cookie-banner choice so the banner does not re-promptPersistent (until cleared)Strictly necessary
_gaCookie (only after consent)GA4 client identifier2 yearsAnalytics
_ga_*Cookie (only after consent)GA4 session state per property2 yearsAnalytics
Vercel deployment cookiesCookieUsed on preview deployments for routing and protection. Not set on the production site under normal browsing.Session / short-livedStrictly necessary
08your rights

What you can demand from me (GDPR + UK GDPR).

If you are in the EU, EEA, UK, or Switzerland, you have all of the following rights. They are not favors. They are rights.

  • Access: get a copy of the data I hold about you.
  • Rectification: correct anything that is wrong.
  • Erasure: ask me to delete your data (right to be forgotten).
  • Restrict processing: freeze processing while a dispute is resolved.
  • Data portability: receive your data in a machine-readable format.
  • Object: object to processing based on legitimate interest.
  • Withdraw consent: withdraw consent at any time (does not affect prior lawful processing).
  • Lodge a complaint: file with your supervisory authority. UK residents: the ICO. EU residents: your member-state DPA (the EDPB members directory has the full list).
09how to exercise

The actual procedure.

Email sangmlee23@gmail.com with the subject line "Data request, access/delete/etc". I respond within 30 days, per GDPR Art. 12(3). If your request is complex, I may extend by up to 60 additional days and will tell you why.

Identity verification: I will ask you to confirm the request from the same email you originally submitted, or to provide one additional matching detail (e.g. the URL you submitted to /scan). This prevents impersonation. I will not ask for ID documents unless the data at issue is genuinely sensitive and no lighter check works.

10california · ccpa

If you are a California resident.

I do not sell personal information. I do not share personal information for cross-context behavioral advertising. There is no financial incentive program tied to your data.

California residents have the right to:

  • Know what personal information I have collected.
  • Request deletion of personal information.
  • Correct inaccurate personal information.
  • Opt out of any future sale or sharing (none currently happens).
  • Limit the use of sensitive personal information (none is collected).
  • Non-discrimination: exercising any of these rights changes nothing about how I treat you.

Same exercise procedure as section 09. Authorized agents may submit on your behalf with written permission.

11global privacy control

GPC is honored automatically.

If your browser sends a Global Privacy Control signal, this site treats analytics as not-consented before the cookie banner is even shown to you. You do not need to click anything for GPC to take effect. GA4 will not load on a GPC-flagged session.

12children

Site is not directed to children under 16.

smlee.dev is a B2B engineering practice site. It is not designed for, marketed to, or knowingly used by children under 16. I do not knowingly collect personal data from anyone under 16. If you are a parent or guardian and believe your child has submitted data, email sangmlee23@gmail.com and I will delete it.

13marketing emails

The newsletter, when it starts sending.

The smlee.dev newsletter is not yet active. When it starts sending, every email will:

  • Identify the sender clearly (Sangmin Lee, smlee.dev).
  • Include a physical mailing address (CAN-SPAM and GDPR Art. 13).
  • Provide a one-click unsubscribe link.
  • Be sent only to addresses that explicitly opted in (Art. 6(1)(a) consent). No purchased lists. No imported contacts.
14data breach notification

If something goes wrong.

In the event of a personal data breach affecting EU or UK individuals, I notify the relevant supervisory authority within 72 hours of becoming aware (GDPR Art. 33). Where the breach is likely to result in a high risk to your rights and freedoms, I notify affected individuals directly without undue delay (GDPR Art. 34).

Notification will identify the categories of data affected, the approximate number of individuals concerned, the likely consequences, and the remediation steps taken or planned.

15changes

When this policy updates.

Material changes update the last-reviewed date at the top of this page and (when appropriate) trigger a notice to active subscribers. Non-material edits (typos, link fixes, formatting) update the page without notification. The English version is the legally binding text; translations of the legal-notice banner are informational.

16contact

How to reach me about this.

Any privacy question, data subject request, or compliance concern: sangmlee23@gmail.com. Response within 30 days for data subject requests; faster for most other questions.