GDPR and CPRA: rethinking analytics

no tracker image

The screenshot is from my laptop with macOS Big Sur using Safari.

It’s time to be a little hard with the bullshit about analytics and trackers. Do you need all your trackers?
Do you want to ask your user to consent with a very long list?

We are living with GDPR and CPRA so… Let’s start rethinking analytics!


California Privacy Rights Act (CPRA) includes all parts of the California Consumer Privacy Act (CCPA) and reinforces it.

At this time (July 5th, 2020), GDPR and CCPA are effective. So each part where I indicate that it’s from/included in CCPA, it’s effective right now.

effective DateMay 25th, 2018January 1st, 2023
who is regulatedControllersBusinesses (CCPA)
who is protectedData SubjectsConsumers (CCPA)
children get special protection✅ (CCPA)
covers Employees
not until:
- January 1st 2021: CCPA
- January 1st 2023: CPRA
what information is protectedPersonal dataPersonal info (CCPA)
additional restrictions on sensitive data
exemptions✅ (CCPA)
lawful bases to process personal data❌ (CCPA)
law is protected from watering down
right to know / right to be notified✅ (CCPA)
right to access✅ (CCPA)
right to correct / right to rectification
right to erasure / right to be forgotten✅ (CCPA)
right to restrict processing
right to data portability✅ (CCPA)
right to “Opt-Out” / right to say no✅ (CCPA)
right to limit the use of sensitive personal infromation
(including precise geolocation)
✅ (provide )
right to reject automated decision making and profiling
right to no retaliation/right to not be discriminated against✅ (CCPA)
privacy policy disclosure✅ (CCPA)
data protection by design and default
written contracts with processors, service providers,
contractors, third parties
✅ (CCPA)
maintain records of processing activities
respond to rights requests✅ (CCPA)
new homepage links required
(ex. limit use of sensitive personal information)
✅ (CCPA)
implement appropriate security measures✅ (CCPA)
security breach notification✅ (CCPA)
data protection impact analysis
data protection officers❌ (CCPA)
adhere to the rules of cross-border data
dedicated supervisory authority
penalties (civil fines)
penalties (private rights of action)

No tracker on my blog?

You have no banner or selector about cookies or consent because I don’t use trackers.
I replaced trackers like Google Analytics, Matomo (ex Piwik) with a customized web server and reverse-proxy.

You can’t imagine what your browser can tell about you without using javascript, it’s incredible.

My stack

For a business reason, I won’t give you all information about how I get and analyze metrics but these are the big lines:

  • database with homemade functions
  • homemade module for reverse-proxy and web server
  • message broker
  • workers to parse each message and send it to the database
  • dashboard to analyze and get alert if needed

I don’t need Google Analytics to know your screen size because I know with which image is loaded, thank you HTML5 and CSS3.

Analytics = just what you need

You need to limit the information that you ask/collect to what you need, thank GDPR to remember it.
Let’s think about what metrics do you need…

  • URL
  • number of view
  • number of error like trying to go to a restricted page or trying to brute-force
  • user’s country (easy with your IP) but I don’t need to save this IP, just the country, so easy and a lot more privacy-friendly
  • screen size
  • language accepted by the browser

It’s just an example but please, stop accumulating 5/10/20 trackers just to know what you can know just reading correctly information from the user’s browser and your reverse-proxy/webserver.