Architecture & Security#

Pulsora is built on secure, scalable infrastructure designed to protect your analytics data while delivering fast, reliable performance globally.

Infrastructure Overview#

Platform Stack#

Pulsora runs on a modern cloud infrastructure:

  • Application Layer: Laravel 12 (PHP 8.3)
  • Database: PostgreSQL 17 with TimescaleDB for time-series data
  • Cache: Redis for session management and rate limiting
  • Queue: Redis-backed Laravel queues for async processing
  • CDN: Cloudflare for global script distribution
  • Hosting: AWS (US-East) and EU (Frankfurt) regions

High Availability#

  • Uptime SLA: 99.9% uptime guarantee
  • Database backups: Continuous WAL archiving + daily snapshots
  • Multi-AZ deployment: Failover within 60 seconds
  • Zero-downtime deployments: Rolling updates with health checks

Data Residency#

Pulsora offers regional data storage to comply with data sovereignty and privacy regulations.

Available Regions#

EU Region (Frankfurt, Germany)

  • For EU customers and those requiring GDPR-compliant EU storage
  • All data stored exclusively on EU infrastructure
  • No cross-border data transfers outside EU
  • Full GDPR compliance with EU data residency

US Region (Virginia, USA)

  • For US and global customers
  • High-performance infrastructure optimized for global access
  • CCPA-compliant storage

How Region Selection Works#

  1. During signup: Choose your data region (EU or US)
  2. Account creation: Your account and all websites are pinned to that region
  3. Data isolation: Your data never leaves your chosen region
  4. No migration: Region cannot be changed after account creation (contact support for special cases)

What Stays in Your Region#

All of your data:

  • Pageviews and events
  • Revenue records
  • Visitor fingerprints (hashed)
  • Session data
  • Custom event properties
  • Website metadata

What's global:

  • CDN script delivery (Cloudflare global network)
  • DNS resolution (Cloudflare)
  • Marketing website (not your analytics data)

Security Infrastructure#

Network Security#

DDoS Protection:

  • Cloudflare Enterprise DDoS mitigation
  • Rate limiting at CDN edge (1000 req/min per IP)
  • Application-level rate limiting (Redis-backed)
  • Automatic bot detection and blocking

Firewall:

  • Web Application Firewall (WAF) at edge
  • IP allowlisting available for enterprise customers
  • Automated threat detection and response

Encryption#

Data in Transit:

  • TLS 1.3 for all API connections
  • HTTPS-only (HSTS enabled)
  • Certificate pinning for mobile SDKs (coming soon)

Data at Rest:

  • AES-256 encryption for database storage
  • Encrypted backups
  • Encrypted logs

API Security#

Authentication:

  • Public tokens (pub_*) for client-side tracking (pageviews/events)
  • Secret tokens (sec_*) for server-side operations (revenue tracking)
  • API keys for dashboard access (JWT-based)

Rate Limiting:

  • Public API: 10,000 requests per hour per token
  • Secret API: 1,000 requests per hour per token
  • Dashboard API: 100 requests per minute per user

Token Security:

  • Public tokens: Can only send events, cannot read data
  • Secret tokens: Can send events + read limited data, cannot delete
  • Tokens can be regenerated anytime from dashboard

Input Validation#

All incoming data is validated and sanitized:

  • URL validation and sanitization
  • Event name restrictions (alphanumeric + underscore only)
  • Property value size limits (1KB per property)
  • Payload size limits (10KB per request)

Malicious payloads are rejected and logged for security review.

Data Storage & Retention#

Database Architecture#

TimescaleDB (PostgreSQL extension):

  • Optimized for time-series analytics data
  • Automatic data partitioning by time
  • Continuous aggregates for fast queries
  • Compression for long-term storage

Schema Design:

  • pageviews table: URLs, referrers, timestamps
  • events table: Custom events with properties
  • sessions table: Aggregated session data
  • revenue table: Transaction records with attribution

Backup & Disaster Recovery#

Backup Schedule:

  • Continuous WAL (Write-Ahead Log) streaming
  • Daily full database snapshots
  • 30-day retention for point-in-time recovery
  • Geo-redundant backup storage

Disaster Recovery:

  • Recovery Time Objective (RTO): 1 hour
  • Recovery Point Objective (RPO): 5 minutes
  • Regular disaster recovery drills
  • Automated failover to standby replicas

Data Lifecycle#

Active Data:

  • Queryable instantly in dashboard
  • Optimized for fast aggregation queries
  • Real-time updates (typically <5 seconds)

Historical Data:

  • Compressed after 90 days
  • Still queryable but slightly slower
  • Retained indefinitely for active accounts

Deleted Data:

  • Soft-deleted for 30 days (recoverable)
  • Hard-deleted after 30 days (permanent)
  • No backups retained after hard deletion

Compliance & Certifications#

Current Compliance#

GDPR (General Data Protection Regulation)

  • EU data residency available
  • Pseudonymization via hashing
  • Automatic data expiration
  • No personal data collection

CCPA (California Consumer Privacy Act)

  • No personal information processed
  • No data sale or sharing
  • User rights respected by design

PECR (Privacy and Electronic Communications Regulations)

  • No cookies used
  • No device storage
  • Server-side processing only

Upcoming Certifications#

🔄 SOC 2 Type II (Coming Soon)

  • Security, Availability, Confidentiality controls
  • Independent third-party audit
  • Annual recertification

🔄 ISO 27001 (Coming Soon)

  • Information security management
  • Risk assessment and treatment
  • Continuous improvement processes

Data Processing Agreements#

DPA available upon request for enterprise customers:

  • GDPR Article 28 compliant
  • Data processing terms
  • Security measures documentation
  • Sub-processor list

Contact enterprise@pulsora.co to request a DPA.

Access Controls#

Team Access#

Role-based access control (RBAC):

  • Owner: Full access, billing, team management
  • Admin: Full analytics access, settings, integrations
  • Member: Read-only analytics access

Audit Logging:

  • All team actions logged (view, export, settings changes)
  • Logs retained for 12 months
  • Available in dashboard for owners/admins

Two-Factor Authentication#

  • Available for all accounts
  • TOTP-based (compatible with Google Authenticator, Authy, 1Password)
  • Backup codes provided
  • Enforcement available for enterprise customers

Infrastructure Monitoring#

System Health#

  • Uptime monitoring: Pingdom + internal monitors
  • Performance monitoring: Laravel Telescope + custom metrics
  • Error tracking: Flare for exception monitoring
  • Log aggregation: Centralized logging with 90-day retention

Status Page#

Real-time system status available at: status.pulsora.co

  • Current uptime and incidents
  • Scheduled maintenance windows
  • Historical uptime data
  • Subscribe to status updates

Privacy by Design#

Every architectural decision prioritizes privacy:

  1. Server-side processing: No client-side fingerprinting
  2. Rotating identifiers: Automatic expiration via salt rotation
  3. No PII storage: IP + User Agent hashed immediately
  4. Minimal data collection: Only what's needed for analytics
  5. Regional isolation: Data doesn't cross regional boundaries
  6. No third-party tracking: Zero external data processors

Security Practices#

Development Security#

  • Code reviews required for all changes
  • Automated security scanning (Snyk)
  • Dependency vulnerability monitoring
  • Regular penetration testing

Operational Security#

  • Principle of least privilege for all access
  • Multi-factor authentication required for production access
  • Encrypted secrets management (AWS Secrets Manager)
  • Regular security training for all engineers

Incident Response#

Security incident process:

  1. Detection and triage (< 15 minutes)
  2. Impact assessment and containment (< 1 hour)
  3. Resolution and recovery (< 4 hours)
  4. Post-mortem and disclosure (< 48 hours)

Disclosure policy:

  • Security incidents disclosed on status page
  • Email notifications to affected customers
  • Public post-mortem for significant incidents

Third-Party Services#

Pulsora uses these third-party services (no analytics data shared):

  • AWS: Cloud hosting and infrastructure
  • Cloudflare: CDN and DDoS protection
  • Postmark: Transactional emails
  • Stripe: Payment processing

All third-party services are vetted for security and privacy compliance.

Responsible Disclosure#

Found a security vulnerability? We appreciate responsible disclosure.

Report to: security@pulsora.co

What to include:

  • Detailed description of vulnerability
  • Steps to reproduce
  • Potential impact assessment
  • Your contact information

What happens next:

  • Acknowledgment within 24 hours
  • Investigation and validation within 7 days
  • Fix deployed within 30 days (for valid issues)
  • Public disclosure coordination (if requested)

Bug bounty: Coming soon

Enterprise Features#

Need additional security or compliance features?

Available for enterprise customers:

  • Custom data retention policies
  • Dedicated infrastructure
  • SLA with financial guarantees
  • Priority support
  • Custom DPA terms
  • IP allowlisting
  • SAML SSO
  • Advanced audit logging

Contact enterprise@pulsora.co for enterprise pricing.

Questions About Security?#

Is my data encrypted?#

Yes. All data is encrypted in transit (TLS 1.3) and at rest (AES-256).

Can Pulsora employees see my analytics data?#

Only for support purposes with your explicit permission. Access is logged and audited.

What happens if Pulsora shuts down?#

You can export all your analytics data anytime. We'll provide 90 days notice and export tools if we shut down.

How do you handle GDPR data subject requests?#

Because we don't collect personal data, typical GDPR requests don't apply. See Privacy & Compliance for details.

Do you share data with third parties?#

No. Your analytics data stays on Pulsora infrastructure. We don't sell, share, or process your data with third parties.

Learn More#


Last updated: 2025-01-13

Questions? Contact security@pulsora.co