Skip to main content
Production checklist

Required environment variables

Both legal variables are optional and empty by default. Your instance runs under your own terms and privacy policy, so the sign-in screen shows no consent line while both are unset. Setting either one alone is enough to show the line, which then links only to the document you provided. Generate BETTER_AUTH_SECRET, BISIBILITY_SECRETS_KEY, and the optional INTERNAL_PROBE_TOKEN with separate invocations of:
Keep both values for the lifetime of the instance and back them up with your other secrets. Replacing BETTER_AUTH_SECRET signs every user out. Replacing BISIBILITY_SECRETS_KEY leaves the provider credentials already stored in the database undecryptable, and every connected provider has to be reconnected by hand.

Optional environment variables

Core and authentication

Database

Email

Temporal

Rank checks and maintenance

Limits and networking

Observability and integrations

Operator observability

Instance migration

Instance settings

The instance_settings database table holds small instance-wide limits that the app and worker share. Missing or invalid values use these code defaults: Set a value from an operator environment with DATABASE_URL configured:
The command validates the key and value and prints the previous and current values for the operator record. App reads refresh within about 60 seconds.
Upgrade note: The former RANK_CHECK_MONTHLY_COST_CAP_CENTS variable has been removed. The monthly provider budget is now a per-project setting, and the old variable is ignored after upgrade. Re-set your budget in Settings > Provider usage after upgrading. See Budget cap. Upgrade note: After upgrading, move any BISIBILITY_GSC_INSPECTION_DAILY_BUDGET value to each project’s Settings > URL inspection panel, up to its 1,000 limit.