Bypassing Ad Blockers

Even though BlogTally Pulse is privacy-focused analytics, it may still be blocked by certain ad blockers. This guide explains why this happens and how to prevent it.

Why Ad Blockers Block Analytics

Ad blockers often use aggressive blocklists that target:

  • Domain names containing words like "analytics" or "tracking"
  • Scripts that collect user data, regardless of privacy practices
  • Common analytics endpoints and patterns

Solutions for BlogTally Pulse

The most reliable solution is to proxy requests through your own domain. Instead of loading the script directly from BlogTally, you serve it from your domain.

Using Nginx

Add this to your Nginx configuration:

location /pulse.js {
    proxy_pass https://tracker.blogtally.com/blogtally.min.js;
    proxy_set_header Host tracker.blogtally.com;
    proxy_ssl_server_name on;
}

Using Apache

Add this to your .htaccess file:

RewriteEngine On
RewriteRule ^pulse\.js$ https://tracker.blogtally.com/blogtally.min.js [P]

Using Next.js

Add this to your next.config.js:

module.exports = {
  async rewrites() {
    return [
      {
        source: '/pulse.js',
        destination: 'https://tracker.blogtally.com/blogtally.min.js',
      },
    ]
  },
}

Using Nuxt.js

For Nuxt 3, add this to your nuxt.config.ts:

export default defineNuxtConfig({
  nitro: {
    routeRules: {
      '/pulse.js': {
        proxy: 'https://tracker.blogtally.com/blogtally.min.js'
      },
    }
  }
})

Best Practices

  1. Choose Generic Names: Use neutral file names like script.js or website.js instead of analytics.js
  2. Test Thoroughly: Verify tracking works with popular ad blockers enabled
  3. Monitor Regularly: Check tracking effectiveness after ad blocker list updates

Common Issues

  • Tracking stops working: Ad blocker lists are updated frequently. Monitor your analytics regularly.
  • Proxy errors: Ensure your SSL certificates are valid and CORS headers are properly set.
  • Script loading issues: Check your browser console for any loading or execution errors.