• Docs
  • Changelog
Sign in
Get started
    • Home
    • Your first deploy
    • Free instances
    • Platform features by plan
    • Use with coding agents
    • FAQ
    • Templates
      • Migrate from…
        • Heroku
        • Railway
    • Compute plans
    • SandboxesBeta
      • Service types
        • Which to use?
        • Static sites
        • Web services
        • Private services
        • Background workers
        • Cron jobs
        • Workflows
        • Multi-service architectures
      • Data storage
        • Render Postgres
        • Render Key Value (Redis®-compatible)
        • Persistent disks
    • How deploys work
    • Supported languages
    • Git providers (GitHub, etc.)
    • Build pipeline
    • Deploy hooks
    • Monorepo support
    • Troubleshooting deploys
      • Previewing changes
        • Single-service previews
        • Preview environments (multi-service)
      • Docker deploys
        • Overview
        • Deploy a registered image
        • Using secrets
      • Runtime
        • Native runtimes
        • Environment variables & secrets
        • Default environment variables
    • Intro to sandboxes
    • Limits
      • How to…
        • Create & configure sandboxes
        • Execute commands
        • Manage files
        • Manage snapshots
      • Use with…
        • Claude Managed Agents
        • Cursor Cloud Agents
        • OpenAI Agents API
      • SDK/CLI reference
        • TypeScript SDK
        • Python SDK
        • CLI commands
    • Intro to workflows
    • Tutorial
    • Limits & pricing
      • How to…
        • Define tasks
        • Define flowsNew
        • Trigger runs
        • Develop locally
      • SDK reference
        • TypeScript SDK
        • Python SDK
      • Example workflows
        • TypeScript examples
        • Python examples
    • Overview
    • Create & connect
    • Database credentials
    • Extensions
    • Version upgrades
    • Logical replication
    • Legacy instance types
      • Database recovery
        • Recovery & backups
        • High availability
      • Database performance
        • Read replicas
        • Connection pooling
        • Admin apps
        • Repacking tables
        • Troubleshooting performance
    • Regions
    • Inbound IP rules
    • Edge caching
    • WebSockets
    • TLS certificates
      • Custom domains
        • Overview
        • Cloudflare
        • Namecheap
        • Other DNS providers
      • Internal traffic
        • Private network
        • Private links
      • Outbound traffic
        • Default IP ranges
        • Dedicated IP addresses
        • Outbound bandwidth
        • Handling network changes
      • Static site config
        • Custom response headers
        • Redirects & rewrites
    • The Render Dashboard
    • SSH / Shell access
    • Projects & environments
      • Service actions
        • Scaling
        • Rollbacks
        • Maintenance mode
        • One-off jobs
      • Infrastructure as code
        • Blueprints overview
        • render.yaml reference
        • Terraform provider
    • In-dashboard metrics
    • Health checks
    • Uptime best practices
      • Logging
        • In-dashboard logs
        • Log streams (syslog/HTTPS)
      • OpenTelemetry (OTel) metrics
        • Provider setup
        • Metrics reference
      • Notifications
        • Webhooks
        • Email / Slack
    • MCP Server
      • Render CLI
        • Overview
        • Command reference
      • REST API
        • Overview
        • API reference
      • Third-party connections
        • OIDC support
        • Datadog
    • Workspaces, members, & roles
    • Login settings
    • Audit logs
      • Organizations
        • Overview
        • SAML SSO
    • DDoS protection
    • Platform maintenance
      • Compliance
        • Overview
        • HIPAA (US health data)
        • HIPAA best practices
        • Shared responsibility model
        • Pentest policy
    • Heroku vs Render
    • Vercel vs Render

Deploy Open Web Analytics

Open Web Analytics is an open-source web analytics framework that can be used as an alternative to commercial tools such as Google Analytics.

  • Stay in control of the data you collect about your users.
  • Run Open Web Analytics under your own domain or as part of your web application.
  • Customize and extend Open Web Analytics to meet your needs.
  • Track WordPress and MediaWiki based websites and admin events.
  • Monitor your application with dozens of standard metrics, dimensions and reports.
  • Integrate with external data sources using the extensive data access API.
  • Remain compliant with GDPR and other privacy frameworks.

You can host an Open Web Analytics instance on Render in just a few minutes. Once it's live, you will be able to access your JavaScript snippet that can be added to any website to instantly record detailed, real-time analytics.

One-Click Deploy

Click Deploy to Render below to deploy Open Web Analytics on Render.

Deploy to Render

Manual Deploy

Follow these steps to manually deploy Open Web Analytics on Render.

Create a MySQL Database

Set up a new MySQL 8 instance on Render. Make sure to deploy MySQL 8 by selecting the master branch. The database should be up in a few minutes. You'll need details from your MySQL database in order to deploy the Open Web Analytics app.

Deploy Open Web Analytics

  1. Fork render-examples/open-web-analytics on GitHub or click Use this template.

  2. Create a new Web Service on Render and give Render permission to access your new GitHub repository. Make sure the Language field is set to Docker and pick a name for your service.

  3. Add the following environment variables to your web service:

    KeyValue
    OWA_DB_HOSTThe hostname from the MySQL database
    OWA_DB_NAMEThe database name from the MySQL database
    OWA_DB_USERThe username from the MySQL database
    OWA_DB_PASSWORDThe password from the MySQL database
    OWA_DB_PORT'3306'
    OWA_AUTH_KEYClick Generate to get a secure random value
    OWA_AUTH_SALTClick Generate to get a secure random value
    OWA_NONCE_KEYClick Generate to get a secure random value
    OWA_NONCE_SALTClick Generate to get a secure random value

That’s it! Save your web service to deploy Open Web Analytics on Render. You can start using your Open Web Analytics service by going to https://your-subdomain.onrender.com as soon as your first deploy is live.

Open Web Analytics Welcome Screen

Deploy Open Web Analytics
  • One-Click Deploy
  • Manual Deploy
    • Create a MySQL Database
    • Deploy Open Web Analytics
All Systems Operational
© Render Inc. All rights reserved.