Thanks — nice, clear question. You're asking whether to use a single LiveKit project for both dev and prod or create separate projects for each environment. Here’s the recommended approach and why.
Recommendation
• Create a separate LiveKit project for each environment (e.g., Realtime App - Dev, Realtime App - Staging, Realtime App - Prod).
Why separate projects are best
• Isolation of credentials: Each environment gets its own API keys and secrets, reducing the chance dev credentials leak into prod or vice versa.
• Safer testing: Dev traffic, webhooks, and logs stay separate so accidental tests or debugging won’t affect production users.
• Clear audit and usage data: Metrics, billing, and logs are easier to interpret when environments aren’t mixed.
• RBAC and config scoping: You can apply different access controls, limits, or configuration per environment without complex workarounds.
• Reduced operational risk: Sharing one project increases the chance of accidental interference with production, which is especially important for regulated or production-critical systems.
When a shared project could be acceptable
• You have a very small, simple deployment and accept the operational risk (not recommended for production-critical use).
• You deliberately want to minimize the number of projects and can enforce strict processes to prevent cross-environment mistakes.
Enterprise note
• If you’re on the Enterprise plan, you can link multiple projects under the same subscription for unified billing and plan controls while still keeping environments fully isolated.
Next steps I can help with
• Walk through creating separate projects and best practices for naming and tagging.
• Show how to separate API keys and set up environment-specific configs in your deployment pipeline.
• Suggest webhook and logging setups per environment.
Which option would you like help with next — creating projects and keys, or setting up environment-specific deployment/config patterns?
Sources:
Structuring development and test environments | LiveKit |
Self-hosted deployments | LiveKit Documentation