Privacy-First Analytics by Design
PulseRank prioritizes user privacy with minimal data collection, GDPR-ready analytics, and complete data ownership.
What Data We Collect
Session Tracking
Session Cookie: pulserank_sid (first-party, 7-day expiry, httpOnly, SameSite=Lax)
IP Addresses: Hashed with SHA-256 + site salt before storage (irreversible)
User Agent: Browser/bot identification string
Referrer URL: Where visitors came from
Page URL: Pages visited (hashed)
Timestamps: Visit times for analytics
What We DON’T Collect
Raw IP addresses (only salted SHA-256 hashes stored)
Personally identifiable information
Email addresses (except hashed for logged-in GDPR requests)
Cross-site tracking data
Third-party cookies
Data Storage
Local Storage Only
All analytics data stored in your WordPress database
Tables: wp_pulserank_hits, wp_pulserank_conversions, wp_pulserank_audits
Settings stored in WordPress options table
No external data transmission to PulseRank servers
Optional External Requests
Bot IP verification (fetches official IP ranges from Google, Bing, OpenAI)
Results are cached locally (transients)
Only used for enhanced bot detection accuracy
Not required for basic analytics functionality
Data Retention
Configurable Retention Periods
Minimum: 30 days (enforced)
Default: 365 days (1 year)
Configurable: Any value ≥ 30 days
Automatic Cleanup: Daily via WordPress cron
Manual Data Management
Delete data by date range via REST API
Purge all data via Settings & Health tab
GDPR export/deletion tools available
Support & Resources
Legal Resources
Disclaimer: This documentation provides general guidance on PulseRank’s privacy features. It is not legal advice. Consult with qualified legal counsel to ensure compliance with applicable privacy laws and regulations in your jurisdiction.
Frequently Asked Questions
We’ve anticipated your concerns and engineered solutions for each one.
PulseRank uses a single first-party session cookie (pulserank_sid, 7-day expiry, httpOnly, SameSite=Lax) for analytics tracking.
Cookie consent requirements vary by jurisdiction:
- EU/UK (ePrivacy Directive): Consent likely required for non-essential cookies
- US (most states): Generally no cookie consent required for first-party analytics
- California (CCPA): Cookie consent not required, but disclosure in privacy policy recommended
Our Recommendation: Consult local regulations and legal counsel. When in doubt, obtain consent to ensure compliance.
All analytics data is stored locally in your WordPress database in custom tables:
wp_pulserank_hits– Visitor tracking datawp_pulserank_conversions– Conversion eventswp_pulserank_audits– Content optimization audits
Nothing is sent to PulseRank servers or any third-party analytics service. You have complete control and ownership of your data.
Yes. PulseRank is designed with GDPR compliance in mind:
- Data Minimization: Only collects essential analytics data
- Pseudonymization: IP addresses hashed (SHA-256) before storage
- Local Storage: All data stays on your server
- User Rights: Export and deletion tools available
- Retention Controls: Configurable data retention (minimum 30 days)
- No Third Parties: No data shared with external services
Important: GDPR compliance also depends on your privacy policy disclosures, cookie consent implementation, proper retention configuration, and your legal basis for processing. We recommend consulting with legal counsel.
IP addresses are never stored in plain text. Before storage, they are:
- Salted: Combined with WordPress auth salt (unique per site)
- Hashed: SHA-256 cryptographic hash applied
- Stored: Only the hash is stored in database
Example:
// Actual code from class-pulserank-tracker.php line 141
$ip_hash = hash('sha256', $remote_addr . wp_salt('auth'));This makes IP addresses irreversible – even with database access, original IPs cannot be recovered.
Why this matters:
- GDPR pseudonymization requirement met
- Data breaches expose only hashes (useless to attackers)
- Cannot identify specific users from database
Yes, multiple ways:
1. Purge All Data (Settings & Health Tab)
Click “Purge All Analytics Data” button. Confirmation required. Settings and configurations preserved.
2. Manual Database Deletion
DELETE FROM wp_pulserank_hits; DELETE FROM wp_pulserank_conversions; DELETE FROM wp_pulserank_audits;
3. Uninstall Plugin
If “Delete data on uninstall” is enabled, removes all tables when plugin is deleted.
4. REST API Bulk Deletion
DELETE /wp-json/pulserank/v1/reports/raw?from=2020-01-01&to=2026-12-31
Stop Guessing. Start Measuring.
Join WordPress sites already using PulseRank to uncover their AI traffic and optimize for the future of search.
