Privacy Policy
Last updated: 2026
This document is informational and describes how MarcinLabs actually operates. It is not legal advice and does not claim regulatory compliance. It should be reviewed by a qualified UK lawyer before being relied on in production.
1. Data controller
The data controller for processing related to this website is Marcin Sowinski. Correspondence address: Peterborough, United Kingdom. Privacy contact: msc1c1ell@gmail.com.
ICO registration details, where legally required, will be provided here.
2. What MarcinLabs is
MarcinLabs (marcinlab.com) is an educational and documentary website. It publishes educational content, personal documentation and information about laboratory research materials (Research Use Only). MarcinLabs does not operate a cart, online checkout, payment processing, shipping fulfilment or order handling on this site.
3. What data we process
3a. Privacy-minimised interest analytics (optional)
After your voluntary consent to optional analytics, we may store research-interest events in a database (e.g. Supabase). Each event may include:
- event type (e.g. selector viewed, topic selected, WhatsApp redirect confirmed),
- selected research topic identifiers (topic ids),
- page language,
- page path,
- event timestamp,
- an optional, short-lived session identifier in sessionStorage (expires after about 24 hours).
We describe this as privacy-minimised — it is not personally identifying on its own, although in combination with other information it could theoretically support low-level profiling. We do not call it “anonymous” unless a lawyer confirms true anonymisation.
3b. Analytics consent preference
Your accept / reject choice for optional analytics is stored locally in your browser (localStorage) so the consent banner does not repeat unnecessarily.
3c. Areas-of-interest selector (page state)
Selected topics remain in the current page state until the page is refreshed or left. They are not stored by MarcinLabs in localStorage or sessionStorage, except for the optional analytics event mechanism described below when consent has been given (topic IDs may then be sent to Supabase with the event — not the WhatsApp message content).
- analytics consent preference — localStorage,
- optional analytics session ID — sessionStorage only after consent; expires after about 24 hours,
- without consent, the selector and WhatsApp handoff still work; analytics events are not sent.
4. What we do NOT collect on MarcinLabs
On this website MarcinLabs does not collect or store in its database:
- your name,
- email address,
- phone number,
- postal address,
- quantities, prices or order values,
- WhatsApp message content,
- medical information or health history.
If you voluntarily provide personal data in WhatsApp or to an external third party after leaving MarcinLabs, that processing happens outside MarcinLabs (see section 7).
5. Research-interest selector & WhatsApp
The research topic selector and WhatsApp redirect work without optional analytics consent. Opening WhatsApp means leaving MarcinLabs. WhatsApp (Meta Platforms) then becomes a separate controller for data processed in the WhatsApp app, under Meta/WhatsApp’s own privacy policies.
MarcinLabs does not see or store the content of your conversation with an external third party. The WhatsApp link may be an affiliate or referral link (see section 8).
6. Purposes & legal bases
The descriptions below are informational. Final legal bases require lawyer verification.
- Optional interest analytics — consent. You may withdraw consent at any time.
- Remembering consent preference — likely necessary for the consent mechanism (subject to legal review).
- Security and abuse prevention — legitimate interests of the controller (to the extent actually applied).
7. Recipients & processors
- Supabase — database hosting for analytics events (if configured).
- Vercel — static site hosting.
- WhatsApp / Meta — separate controller after you leave MarcinLabs.
- External third party — if you contact them via WhatsApp, they become a separate controller of your contact data.
MarcinLabs does not sell personal data.
8. External contact and data processing
Continuing to an external third party’s WhatsApp may have a commercial or advertising character. MarcinLabs does not process your WhatsApp conversation content or payment/delivery data in this flow. A fuller description of the commercial relationship is in the disclaimer.
9. Cookies & browser storage
Details: Cookie Policy. Optional analytics are not loaded before consent. The topic selector and WhatsApp work without analytics consent.
10. Retention
- Interest analytics events — typically up to about 90 days (configurable; older records may be deleted).
- Session identifier in sessionStorage — about 24 hours.
- Consent preference — until localStorage is cleared or you change your choice.
11. International transfers
If providers (e.g. Supabase, Vercel) process data outside the UK/EEA, we use — to the extent available — appropriate safeguards provided by law (e.g. standard contractual clauses). Details require legal review against current provider server locations.
12. Your rights
Under UK GDPR / the Data Protection Act 2018 you have rights including:
- access,
- rectification,
- erasure,
- restriction of processing,
- data portability (where applicable),
- objection (where applicable),
- withdrawal of consent for optional analytics — without affecting lawfulness of processing before withdrawal.
To withdraw analytics consent, use “Privacy settings” in the site footer or clear localStorage for this domain. For data processed by WhatsApp/Meta or an external third party, contact them directly.
You may also complain to the Information Commissioner’s Office (ICO) in the UK: ico.org.uk/make-a-complaint. We encourage you to contact us first: msc1c1ell@gmail.com.
Nothing in this policy is intended to exclude rights that cannot be excluded under applicable UK law.
13. Children
This site is intended for adults (18+). We do not knowingly collect children’s data.
14. Changes
We may update this policy when the site’s operation changes. The date at the top indicates the last update.
15. Contact
msc1c1ell@gmail.com