Emergency Hotline: Call 1-844-363-1423 (United We Dream Hotline)
ICE Encounter

Why Privacy-Preserving Analytics?

Traditional analytics (Google Analytics) pose serious risks for immigrant communities:

Risk Impact
IP address logging Location tracking
Device fingerprinting User identification
Cookie tracking Cross-site surveillance
Third-party data sharing Corporate/government access
Subpoena vulnerability Legal exposure

An advocacy site claiming to protect immigrants must not feed user data into surveillance ecosystems.


Cookieless Analytics Options

Recommended Platforms

Platform Cost Privacy Features Hosting
Plausible $9/mo+ No cookies, IP hashing, EU servers Cloud or self-hosted
Fathom $14/mo+ No cookies, EU data isolation Cloud only
Simple Analytics $19/mo+ No cookies, no fingerprinting Cloud only
Umami Free Open source, self-hosted Self-hosted only

Why Not Google Analytics?

Issue Problem
Cookies required GDPR consent banner needed
IP logging Location surveillance
Data sharing Google advertising ecosystem
Complex Overwhelming for simple needs
Legal risk Data subpoena concerns

Plausible Implementation

Cloud Setup

  1. Create account at plausible.io
  2. Add your domain
  3. Add script to site

Add to _includes/layouts/base.njk:

<script defer data-domain="yourdomain.org" src="https://plausible.io/js/script.js"></script>

Self-Hosted Setup

For maximum privacy, self-host Plausible:

# docker-compose.yml
version: '3.3'
services:
  plausible:
    image: plausible/analytics:latest
    restart: always
    command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh run"
    ports:
      - 8000:8000
    environment:
      - DATABASE_URL=postgres://plausible:plausible@db:5432/plausible_db
      - SECRET_KEY_BASE=your-secret-key
      - DISABLE_REGISTRATION=true

Key Metrics Available

Metric SEO Value
Page views Content performance
Unique visitors Reach estimation
Referrers Backlink tracking
Top pages Popular content identification
Countries Geographic reach
Devices Mobile vs desktop split

Google Search Console

Setup

  1. Go to Search Console
  2. Add property (your domain)
  3. Verify ownership (HTML file, DNS, or Google Tag)

Key Reports for SEO

Performance Report

Metric What It Shows Action
Impressions How often you appear in search Track visibility growth
Clicks Actual traffic from search Measure success
CTR Click-through rate Optimize titles/descriptions
Position Average ranking Track optimization impact

Filter by:

  • Query (keyword analysis)
  • Page (content performance)
  • Country (geographic targeting)
  • Device (mobile vs desktop)

Index Coverage

Monitor for issues:

Status Meaning Action
Valid Indexed and working Good
Warning Indexed with issues Review and fix
Error Not indexed Fix immediately
Excluded Intentionally not indexed Verify correct

Core Web Vitals

Track performance metrics:

  • LCP, INP, CLS over time
  • Mobile vs Desktop comparison
  • URL-level issues

Query Analysis

Find optimization opportunities:

Filter: Impressions > 100, CTR < 3%

These are queries where you appear but don't get clicks.
Opportunities:
1. Improve title tag
2. Improve meta description
3. Target featured snippet

Event Tracking

Privacy-Preserving Event Tracking

Track key interactions without cookies:

Plausible custom events:

// Track hotline clicks
document.querySelectorAll('a[href^="tel:"]').forEach(link => {
  link.addEventListener('click', () => {
    plausible('Hotline Click');
  });
});

// Track resource downloads
document.querySelectorAll('a[href$=".pdf"]').forEach(link => {
  link.addEventListener('click', () => {
    plausible('PDF Download', {props: {file: link.href}});
  });
});

Goals to Track

Goal Trigger SEO Value
Hotline clicks Click on tel: link Crisis engagement
PDF downloads Click on .pdf link Resource usage
Legal aid clicks Click to external legal aid User journey completion
Language switches Language selector use Multilingual usage

Privacy-First Configuration

No Personal Data Collection

Ensure analytics configuration:

// Plausible - already privacy-first by default

// If using any custom tracking:
const trackEvent = (name, props = {}) => {
  // Never include:
  // - IP addresses
  // - User identifiers
  // - Form input values
  // - Geographic coordinates
  // - Device fingerprints

  // Safe to include:
  // - Page path
  // - Event name
  // - Aggregated categories
  plausible(name, {props});
};

Data Retention

Setting Recommendation
Retention period Minimum needed (30-90 days)
IP logging Disabled or hashed
User identifiers None
Cross-site tracking Disabled

No Cookie Consent Required

Because cookieless analytics don't use:

  • Cookies
  • Local storage
  • Device fingerprinting
  • Cross-site tracking

You don't need a cookie consent banner - improving user experience and Core Web Vitals.


Dashboard Setup

Key SEO Dashboard Widgets

Widget Data Source Frequency
Organic traffic trend Plausible Daily
Top landing pages Plausible Weekly
Search queries Search Console Weekly
Index coverage Search Console Weekly
Core Web Vitals Search Console Monthly
Top referrers Plausible Weekly

Weekly SEO Review

  1. Traffic check - Any significant changes?
  2. Query analysis - New opportunities?
  3. Index errors - Any pages dropped?
  4. Top content - What's performing?
  5. Referrers - New backlinks?

Compliance Documentation

Privacy Policy Language

## Analytics

We use privacy-preserving analytics that:
- Do NOT use cookies
- Do NOT track IP addresses
- Do NOT create user profiles
- Do NOT share data with third parties
- Do NOT allow cross-site tracking

We collect only aggregate, anonymous data:
- Page views (not tied to individuals)
- General geographic region (country level)
- Device type (mobile/desktop)
- Referral sources

No personal information is collected, stored, or shared.

For Legal Review

Document that your analytics:

  • Comply with GDPR (no personal data processing)
  • Comply with CCPA (no sale of personal information)
  • Do not require consent under ePrivacy Directive
  • Cannot be subpoenaed for individual user data

Analytics Checklist

Setup

  • [ ] Privacy-preserving analytics installed (Plausible/Fathom)
  • [ ] Search Console verified
  • [ ] Sitemap submitted to Search Console
  • [ ] Goal/event tracking configured
  • [ ] Team access configured

Monitoring

  • [ ] Weekly traffic review scheduled
  • [ ] Search Console alerts enabled
  • [ ] Index coverage monitored
  • [ ] Core Web Vitals tracked

Privacy

  • [ ] No cookies used
  • [ ] No IP logging
  • [ ] No cross-site tracking
  • [ ] Privacy policy updated
  • [ ] No consent banner needed

Next Steps

  1. Review keyword research - Use query data for optimization
  2. Check technical SEO - Verify Core Web Vitals
  3. Optimize featured snippets - Use CTR data for improvements
Legal Disclaimer

This website does not provide legal advice. The information provided on this site is for general informational and educational purposes only. It does not create an attorney-client relationship.

Information on this website may not be current or accurate. Immigration law is complex and varies by jurisdiction and individual circumstances. Always consult with a qualified immigration attorney for advice specific to your situation.

Neither ICE Encounter, its developers, partners, nor any contributors shall be liable for any actions taken or not taken based on information from this site. Use of this site is subject to our Terms of Use and Privacy Policy.