.env · debug🔥 popular

Missing ENV Detector

Paste your .env and a list of required keys. Instantly see which variables are missing, empty, or extra.

Be the first to rate
2 issues across 4 required keys
missing2
JWT_SECRET
STRIPE_SECRET_KEY
empty0
— none —
ok2
DATABASE_URL
NODE_ENV
extra (unused)2
PORT
OLD_UNUSED_KEY

What it does

  • Flags every required key that's missing or empty
  • Shows extra (unused) keys too — useful for cleanup
  • Accepts a plain list, a .env.example, or a schema
  • Generates a pastable checklist for CI
  • 100% client-side

Privacy

Runs 100% in your browser. Your .env never touches our servers.

client-side only

Usage examples

Case 1 · All keys present
// .env
DATABASE_URL=postgres://...
JWT_SECRET=xyz

// required
DATABASE_URL
JWT_SECRET
✓ ok: DATABASE_URL
✓ ok: JWT_SECRET
(2/2 required keys set)
Case 2 · Missing + empty
// .env
DATABASE_URL=postgres://...
JWT_SECRET=

// required
DATABASE_URL
JWT_SECRET
STRIPE_SECRET_KEY
✗ missing: STRIPE_SECRET_KEY
⚠ empty:   JWT_SECRET
✓ ok:      DATABASE_URL
(1/3 required keys set)
Case 3 · Extra keys flagged
// .env
DATABASE_URL=postgres://...
LEGACY_THING=remove-me

// required
DATABASE_URL
✓ ok:     DATABASE_URL
⚠ extra:  LEGACY_THING   (not in required list)

When to use this tool

  • Pre-deploy check — compare prod .env against .env.example
  • PR review — paste the diff of .env.example and confirm prod has everything
  • Onboarding — verify a new hire's .env.local has every required key
  • Cleanup — find keys in .env that aren't actually used anywhere
  • Migration — moving between hosts, catch keys that didn't carry over

Common mistakes

  • Thinking 'extra' means wrong — sometimes it's just undocumented-but-needed; cross-check
  • Forgetting to update .env.example when adding a new required var
  • Treating 'missing' keys as blockers when they have sensible defaults in code
  • Running the check without also running the validator — syntax errors pollute the results

Missing ENV Detector — find env variables before they break prod

A missing .env variable is the single most common cause of a broken deploy. This detector compares your .env file against a list of required keys — paste either as a plain list or a .env.example — and flags what's missing, what's empty, and what's unused.

What it checks

  • Missing: required key doesn't exist in your .env
  • Empty: key exists but has no value
  • Extra: key exists in your .env but isn't on the required list (often dead config)

Why this matters

Production crashes on missing env vars get blamed on "the deploy." In reality, the root cause is usually that a key was added locally, never documented in .env.example, and never set on the host. Running your .env through this detector before merging a PR catches it at code review instead of during an incident.

Frequently asked questions

Where do I get the list of required keys?

The most reliable source is your .env.example file — paste it directly as the required list. Alternatively, check your app's startup validation (Zod schema, joi, env-schema) or your infrastructure docs for the canonical list.

Does it check values or just key presence?

Both. The detector flags keys that are missing entirely (not in your .env) and keys that are present but empty (KEY= with no value). A key set to a whitespace-only value is also flagged as empty.

What does 'extra' mean in the results?

An extra key is one that exists in your .env but is not on the required list. It may be dead config that can be cleaned up, or an undocumented-but-needed key — cross-check before removing.

Can I use this in CI/CD pipelines?

This is a browser tool, not a CLI. For CI/CD, use dotenv-linter or add a startup check with Zod (z.object({ KEY: z.string() }).parse(process.env)) that fails the build if required keys are missing.

Related tools

Learn more

coming soon

Get notified when env syncing launches

We're building a tiny tool to keep .env files in sync across teammates and environments. Leave your email — no spam, just a single launch ping.