Groq provides hosted inference for open models and its own tool-using Compound systems. Use this reference to choose the request interface, check operating costs and set up a controlled first integration.
What Groq offers through the API
Groq is an inference platform: the company serving your request can differ from the organization that released the model. Its catalog includes hosted model identifiers, audio models and Compound systems. Keep that distinction in your configuration: a Groq API key belongs with a Groq endpoint even when the model identifier contains another organization’s name. Official documentation.
Begin with the interaction your application needs. A short classification task, a multi-turn assistant and a document extraction job have different success criteria. Save representative inputs before choosing an identifier. Compare whether returned text is useful, whether required fields survive awkward input, and whether your application handles an incomplete answer. These are your acceptance criteria, not promises attached to a model family.
The OpenAI-compatible base URL is https://api.groq.com/openai/v1. Groq also maintains its own Python and TypeScript clients. Compatibility has documented exceptions, so a successful connection is not proof that every parameter from another provider is supported. Review those exceptions when migrating an existing request. Official documentation.
For a new project, use the native Groq client first. This keeps your code aligned with provider examples and makes a redacted reproduction easier to prepare. If your application already abstracts several providers, preserve a provider-specific capability map. Remove unsupported fields deliberately rather than silently stripping arbitrary request data after an error.
Groq organizes operational access through projects. Project selection scopes generated credentials and the views used for logs and usage. Organization controls still constrain what a project can do. Give development and production different project names so a test run can be traced without guessing which application sent it. Official documentation.
Choose the least complicated path that satisfies your task. A plain completion is a useful baseline before adding tool definitions, retrieval or a stateful conversation. Make one change at a time and compare both the answer and returned usage. Retain the exact identifier and prompt revision with each evaluation result; otherwise a later model migration becomes difficult to diagnose.
The documentation separates ordinary model calls from Compound, which can use hosted tools. It also describes Responses alongside Chat Completions. Treat each surface as a distinct integration contract: output items, tool behavior and billing categories can differ even when the user-facing experience looks like the same assistant. Official documentation.
This hub is a navigation point for that work. Pricing explains which usage categories enter an estimate. Models helps inspect identifiers and lifecycle status. The key guide covers the console path, and the Python tutorial provides a small diagnostic script. Once that baseline works, scale the workload while watching throughput, expenditure and answer quality separately.
Pricing at a glance
| Summary | Verified value |
|---|---|
| Lowest input price model | Safety GPT OSS 20B |
| Input price | $0.075 per 1M tokens |
| Output price | $0.3 per 1M tokens |
| Free access | The official rate-limit reference publishes Free Plan limits. The available models and quotas are shown in that table; entitlement is checked in your account. |
Last verified · Source ↗
Read the unit beside each amount. Token-based text and duration-based audio charges describe different products. A low-looking number is not enough to compare them. Official documentation.
Open Groq pricing for complete categories and workload examples.
Models available
| Model | Official identifier | Modalities | Context tokens | Input USD / 1M | Output USD / 1M | Status |
|---|---|---|---|---|---|---|
| GPT OSS 120B | openai/gpt-oss-120b | text | 131,072 | $0.15 | $0.6 | Active |
| GPT OSS 20B | openai/gpt-oss-20b | text | 131,072 | $0.075 | $0.3 | Active |
| Qwen/Qwen3.6-27B | qwen/qwen3.6-27b | text | 131,072 | $0.6 | $3 | Active |
| Qwen/Qwen3.8-27B | qwen/qwen3.8-27b | text | 131,042 | $0.8 | $4 | Active |
| Safety GPT OSS 20B | openai/gpt-oss-safeguard-20b | text | 131,072 | $0.075 | $0.3 | Active |
Last verified · Source ↗
The Groq model catalog connects family selection with exact identifiers. Check model permissions if a listed model is inaccessible.
Free tier and how to get a key
| Condition | Verified details |
|---|---|
| Current terms | The official rate-limit reference publishes Free Plan limits. The available models and quotas are shown in that table; entitlement is checked in your account. |
Last verified · Source ↗
Groq distinguishes Free and Developer plans. Check the organization’s current plan before expecting paid-plan features. Official documentation.
Follow the Groq API key steps and free-tier conditions before upgrading.
Rate limits and tiers
The organization is the outer capacity boundary. Project settings can impose tighter controls, while request and token limits remain distinct. Official documentation.
Use the Groq rate-limit reference to plan the busiest part of your workload, not only average traffic.
Service status
A public incident can explain a cluster of failures, but a green indicator does not validate a credential or payload. For one failing call, start with Groq error diagnosis.
Start in 5 minutes
Set the environment variable, install the Groq package and send a short request. This is a starter script, not a recorded inference transcript.
import os
from groq import Groq
client = Groq(api_key=os.environ["GROQ_API_KEY"], timeout=30.0)
response = client.chat.completions.create(
model="openai/gpt-oss-20b",
messages=[{"role": "user", "content": "Explain one useful application of model APIs."}],
max_completion_tokens=256,
)
print(response.choices[0].message.content)
Continue with your first Groq request in Python for timeout handling and a deliberate failure.
Recent changes
- Groq · Whisper Large V3 Turbo — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · Whisper — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · Qwen/Qwen3.8-27B — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · Qwen/Qwen3.6-27B — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · Safety GPT OSS 20B — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · GPT OSS 20B — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · GPT OSS 120B — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · Prompt Guard 2 86M — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · Llama Prompt Guard 2 22M — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
- Groq · groq/compound-mini — MetadataRecord updated; consult the linked source for details. → SDK languages: ["Python","JavaScript","TypeScript"]Source ↗
Review model and price changes before updating a deployment. A catalog addition is a reason to evaluate a candidate, not an instruction to replace a working model.
Use the AI API cost calculator to turn the model and workload you are considering into an estimate.
Last verified · Source ↗
Frequently asked questions
Is Groq the same provider as xAI’s Grok?
Can I use the OpenAI Python package with Groq?
Why does a Groq model name begin with openai?
Do projects create additional organization capacity?
Where should I check a rejected request?
Sources
Last verified · Source ↗