## TL;DR
Deepgram's 403 'model not available' means your API key's project does not have access to the Nova model tier you requested. Check which models your plan includes, fall back to a base model for the transcription run, and upgrade the project tier if you need Nova's accuracy on financial speech.

## The error
```text
HTTP 403 Forbidden
{"err_code": "MODEL_NOT_AVAILABLE", "err_msg": "The requested model (nova-2) is not available for this project."}
```

## Fix it
1. List the models available to your key by checking the Deepgram console project settings or the model listing endpoint.
   Expected: Expected: the listing shows which tiers (base, enhanced, nova) your plan includes.
2. Re-run the transcription with a model your plan includes, for example the enhanced or base tier, and compare accuracy on a sample earnings segment.
   Expected: Expected: the transcription succeeds and you can measure the quality gap versus Nova.
3. If the quality gap matters for financial terminology, request the Nova tier for the project in the console or via support.
   Expected: Expected: the project gains Nova access and the 403 stops.
4. In the pipeline, make the model a config value with a fallback chain (nova, then enhanced, then base) so a tier mismatch degrades instead of failing.
   Expected: Expected: transcription always completes, logging which model tier was actually used.

## When to use
- Your earnings audio pipeline gets a Deepgram 403 naming the model, not the key.
- You need to know whether the plan or the project configuration blocks Nova.
- You run transcription where model tier affects financial-term accuracy.

## When not to use
- The error is 401 - that is an invalid API key, different fix.
- The error is 402 - that is billing/credits, different fix.
- You need Nova specifically and cannot accept lower tiers - then this is a purchasing step.

## Why it happens
Deepgram gates model tiers per project. Keys on lower plans or older projects may not include Nova, and requesting it returns 403 rather than silently downgrading. The API treats model access as an authorization decision, hence 403 and not 400.

## Variant phrasings
### deepgram model_not_available 403
Same failure and fix; some searchers phrase the query this way.
### deepgram nova not available for project
Same failure and fix; some searchers phrase the query this way.

## Edge cases
- Model availability can differ by region; a model available in one region may 403 in another.
- Self-hosted Deepgram deployments have their own model allowlists separate from cloud plans.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_5TQGMA29Ozrle1zipYftgA
