Per-agent, per-call, per-user, per-tenant cost attribution in OpenAI Agents SDK agents — without rewriting your code, without adding a proxy to the request path.
The problem
OpenAI Agents SDK is great at what it does, but production-grade cost tracking is bring-your-own. Most teams discover this when the first production incident hits, the first OpenAI bill arrives, or the first auditor asks for evidence.
Specifically:
- Built-in tracing is OpenAI-platform-bound and developer-focused
- No native cross-vendor model support in traces
- Policy enforcement (approval flows, spend caps) is bring-your-own
How Prefactor solves it
Prefactor wraps your OpenAI Agents SDK Agent and adds cost tracking as a runtime layer. Specifically:
- find the workflow eating your OpenAI budget
- catch loops before the bill
- bill internal teams for AI usage
- decide which agent to migrate to a cheaper model
- quantify savings from a prompt change
Install and integrate
pip install prefactor-openai-agents
from openai_agents import Agent, run
from prefactor import Prefactor
pf = Prefactor(api_key="pf_live_...")
agent = pf.wrap(Agent(...), agent_id="customer-support-v1")
result = await run(agent, input="...")
Specific use cases
- Find the workflow eating your openai budget
- Catch loops before the bill
- Bill internal teams for ai usage
- Decide which agent to migrate to a cheaper model
- Quantify savings from a prompt change
FAQ
Does this add latency? Per-span instrumentation adds ~2-5ms. Telemetry ships asynchronously. No synchronous network call in the agent's hot path unless you enable blocking policy enforcement.
Can I configure this per-agent? Yes. Cost Tracking settings are per-agent — different agents can have different policies, sampling rates, retention, etc.
Is this compatible with other observability tools? Yes. Prefactor exports OpenTelemetry; works alongside Datadog, Langfuse, LangSmith, and others.
Related
Start free
[Get started free →] [Book a demo →]