Privacy notice and analytics choices
Updated: 15 October 2026
Operator and purpose
nilsliu.dev is operated by Nils Liu. Analytics helps improve public articles, understand visit sources and measure onward reading. Reading does not require analytics consent. Privacy contact: wulingteen@gmail.com.
Google Analytics only after permission
We use free Google Analytics 4 (GA4) with basic consent mode. Without a valid opt-in, the GA4 script is not loaded and no GA4 analytics request is sent. Declining does not restrict reading, searching or sharing.
After consent, we measure page and article visits, post-consent reading activity, clicks to further articles, successful link copies and opening sharing controls. Reading activity means at least 30 seconds on a visible, focused page and at least 50% article progress. It does not prove completion or understanding; share intent does not prove a successful share.
Google processes cookies and technical connection data, which may include browser, device and approximate location information. Connecting to Google provides technical data such as an IP address. We do not request precise location or enable Google signals, advertising personalization, User-ID or Google Ads linking.
Facebook attribution and data boundaries
Facebook article links contain four public UTM parameters identifying source, medium, the daily Reels campaign and the article. Only our fixed public campaign values are passed to GA4. fbclid, other query parameters, fragments and arbitrary external referrer URLs are excluded from our analytics.
Search terms, form contents, emails, sign-in details, private pages and Vault are not sent to GA4. Internal recommendations do not add UTM parameters. Pre-consent reading activity is not replayed.
Storage and retention
A necessary first-party localStorage record remembers your choice, its version and time for 180 days. After consent, GA4 uses first-party _ga and _ga_-prefixed cookies to distinguish browsers and sessions. We configure a maximum of 60 days without extension on ordinary return visits; browsers may remove them sooner.
GA4 user- and event-level data retention is set to 2 months, without resetting on new activity. Standard aggregated reports can be retained longer. Google may process or store data outside Taiwan.
Appearance preferences, reading marks and bookmarks use separate local storage. Optional sign-in and synchronization process account data and reading preferences in the website backend, without linking them to a GA4 user identity.
Withdrawal and requests
You can reject analytics at any time through the footer settings or the button on this page. Further analytics stops and known cookies of this integration are cleared. This does not automatically delete data already sent.
For access, correction, deletion or objections, contact wulingteen@gmail.com. Requests are handled under applicable rules. Where browser-coded data cannot be linked to you, we will explain that limitation rather than request unnecessary identity documents. You may also complain to your local data-protection authority.
Consent choices, blockers and browser restrictions make reports incomplete. They are not a count of every reader or a way for us to identify each visitor.
Other features and providers
Vercel provides hosting and necessary connections, and Google Fonts supplies fonts. These existing services may receive connection information even if you reject GA4.
If you submit the contact form, your name, email and message are sent through FormSubmit to Nils; newsletter requests send your entered email. This supports replies or subscription handling and is separate from analytics consent. Optional sign-in and synchronization process the Google account data and reading preferences you choose to provide.
External services such as Facebook and LinkedIn have their own privacy policies. Changes affecting the analytics scope will be dated here and any necessary new choice requested.