Mark Privacy Policy
Mark reads EXIF and draws the watermark on your own device; your photos never leave it. This policy spells out what we can see, how long it is kept and how to turn it off.
1. Who this policy covers and who is responsible
Mark (some builds show "镜笺 Lenscript" or "Lenscript"; "Mark" below) is developed and operated by Lenscript (光子方程), an independent developer team ("we", "us"). Contact: donaldkuke@gmail.com.
This policy covers Mark's web version (mark.lenscript.cn), desktop versions (Windows / macOS / Linux), Android version and command-line tool, and the counting service markstats.lenscript.cn. The rules of use are in the terms of use.
2. The short version
Mark has no account, no ads and no third-party analytics or crash-reporting SDK. Reading photos, parsing EXIF and drawing watermarks and frames all happen on your device (the web version runs inside your browser); photos, file names and EXIF contents are never uploaded. All we receive is a set of anonymous usage counters (which you can turn off), server access logs, and any email or issue you choose to send.
3. Processed only on your device
- Photos and EXIF: camera, lens, aperture, shutter, ISO, capture time and so on, used only to build the watermark locally; a custom logo you add is held in memory only.
- Settings: chosen template, export format, signature text, logo mode, copyright text and similar, kept in the browser's or app's local storage.
- Desktop licence file (if any): kept in your computer's app-data folder; remove it with "Clear licence" in the app.
Clearing the site's data in your browser, clearing the app's data or uninstalling removes all of the above.
4. Location data on export
On export Mark removes the GPS location from EXIF, always: PNG files and files exported from RAW get a rebuilt minimal EXIF without GPS; JPEG files have the EXIF GPS fields unlinked and the old thumbnail dropped. Camera, lens and exposure settings stay in the exported file.
Note that a JPEG's XMP metadata is kept as it is. If software such as Lightroom or your phone wrote the location into XMP, the exported JPEG may still carry it. If you need location removed completely before sharing, turn off location writing in that software first, or check the file with a dedicated metadata-cleaning tool.
5. Anonymous usage counters (optional)
The web, desktop and Android versions send six kinds of event to our self-hosted counter markstats.lenscript.cn (GoatCounter): app opened (with platform and version), photo imported, template selected (with template ID), export succeeded or failed (with template ID), batch size band and outcome, and save failed. They contain no device identifier, photo, file name or EXIF value, and no cookie is set.
- Counting is on by default. To turn it off, switch off "Anonymous usage statistics" in the "Support Mark" dialog; on the web you can also run
localStorage.in the browser console. The choice lives in local storage, so clearing the site's or app's data turns counting back on and you need to switch it off again.setItem( 'lens_telemetry', '0') - The counter stores the event path and time and summary dimensions derived from the request, such as browser, operating system and country or region; it does not store IP addresses. To estimate unique visitors it keeps an 8-hour hash of IP and browser identifier in memory only, never on disk.
- The local web-server mode and the command-line tool send no counters at all.
6. Server access logs
When you visit mark.lenscript.cn or markstats.lenscript.cn, the server records access logs: full IP address, time, request path, browser User-Agent and referrer. The logs are used to troubleshoot, defend against attacks and see overall traffic; they stay on our server, rotate daily and are kept for at most 60 days before being overwritten. Both domains are served through Cloudflare for CDN and security; Cloudflare processes your IP address and request headers in transit (see its privacy policy).
7. Android permissions
- Network: to send the anonymous counters described above.
- Storage (Android 9 and older only): to read the photos you pick and save exports; on Android 10 and later photos are read through the system file picker and exports saved to Pictures/Lenscript.
- Querying installed WeChat and Alipay: only to open that app when you choose to tip.
Mark never asks for camera, location, contacts or microphone permissions.
8. Tips
Mark is free. Tipping is entirely voluntary and unlocks nothing. The web version shows static Alipay and WeChat payment codes; the Android version opens an Alipay payment link, or saves the WeChat code to your gallery and opens WeChat. Payment happens inside Alipay or WeChat; we never see your payment details, only what the payment platform shows in our receipt records. If you are a minor, ask a parent or guardian before tipping.
9. Retention
| Data | Where | Kept for |
|---|---|---|
| Photos, EXIF, custom logo | Your device | Not stored (the logo stays in memory) |
| Settings and desktop licence file | Your device | Until you clear data or uninstall |
| Anonymous usage counters | Our server | Kept as aggregate statistics, without IP addresses |
| Server access logs (with full IP) | Our server | At most 60 days |
| Emails you send us | Our mailbox | As needed after handling; deleted on request |
10. Your rights
Under China's Personal Information Protection Law and any law that applies where you live (such as the GDPR or CCPA) you can:
- access and copy the personal information we hold about you;
- correct inaccurate or incomplete information;
- delete your information or delete your account (where one exists);
- withdraw consent and restrict or object to certain processing (for example turn off anonymous statistics);
- receive a copy of your data in a common machine-readable format (portability);
- complain to the supervisory authority where you live.
To exercise a right, email donaldkuke@gmail.com and include your registered email or another way for us to identify you. We reply within 15 business days; to protect your data we may first verify your identity. Requests are free unless they are clearly repetitive or unfounded.
11. Security and security incidents
All traffic to our servers is encrypted with HTTPS; only the necessary ports are exposed to the public internet, administrative endpoints are authenticated and rate-limited, and secrets live only in the server environment, never in code or logs.
If a security incident is likely to put your personal information at risk, we notify you within 72 hours of confirming it, by the email you gave us or on this page, and report it to the authorities as the law requires.
12. Children
Mark is intended for users aged 14 and over (or the minimum age required where you live) and is not designed for children. We do not knowingly collect personal information from children under 14; if you are a parent or guardian and believe a child has given us information, contact donaldkuke@gmail.com and we will delete it promptly.
13. Where data is stored and international transfers
Our servers are located in mainland China. Processing outside China happens in these cases: Cloudflare's global network handles your requests in transit; payment providers and app stores may process payment data where they are established; and any other provider named in the relevant section of this policy. We send each provider only the minimum needed for its task and require protection equivalent to this policy.
14. Changes to this policy
We update this policy on this page and revise the date at the top. For material changes to what we collect, why, or with whom we share it, we give at least 15 days' notice on this page, in the app or by email. Previous versions are available on request. The current version lives at https://lenscript.cn/en/mark/privacy/.
15. Contact
Privacy questions, rights requests, data export or deletion: donaldkuke@gmail.com (this mailbox is monitored). Chinese-speaking users can also reach us in QQ group 824558022. We reply within 15 business days.