FluiqvsPortkey

The Portkey Alternative: Deep Traces, No Gateway Tax

Portkey is an LLM gateway for routing and fallbacks. Fluiq instruments the SDK directly, giving you full agent trace trees, security scanning, and inline evals with zero proxy latency and no routing configuration.

Free tier · No credit card · 2-minute setup

0 msgateway latency, SDK-only instrumentation
Fullagent span trees across all frameworks
Server-sidesecurity, not SDK-accessible

Feature comparison

How Fluiq and Portkey stack up across the features that matter in production.

Feature
FluiqFluiq
Portkey
SDK-based (no gateway / API key swap)
requires Portkey client + API key
Zero added latency
gateway round-trip per request
Full agent span trees
logs calls, not spans
LangChain, CrewAI, Google ADK tracing
~
Per-node token & cost breakdown
Prompt injection & jailbreak blocking
PII detection & redaction
Trace-driven response caching
~semantic cache via gateway
LLM-as-judge evals
CI/CD eval gates
Dataset management
Prompt management
Load balancing & fallbacks

~ = partial support  ·  - = not available

An honest take

We'll be straight. Here's where Portkey genuinely excels, and where Fluiq goes further.

Where Portkey shines

  • Excellent LLM routing: automatic fallbacks, load balancing across providers, and retry logic without code changes.
  • Provider-agnostic gateway, swap models or add fallbacks without touching application code.
  • Good virtual key management for controlling API access across teams.
  • Semantic cache via the gateway helps reduce repeated calls for similar prompts.

Where Fluiq pulls ahead

  • No gateway, Fluiq patches the SDK directly. Your request goes straight to OpenAI/Anthropic/Gemini with zero extra network hops.
  • Full agent trace trees: Fluiq maps every LLM call, tool use, and agent handoff into a structured span tree across LangGraph, CrewAI, Google ADK, and more.
  • Security layer: prompt injection blocking, PII redaction, jailbreak scoring, and secret leak detection run server-side on every call, not accessible via the public SDK.
  • LLM-as-judge evals run inline in production, not just in offline eval scripts, and can block low-quality responses before they reach users.
  • Dataset and prompt management baked into the same SDK, not bolted on through a gateway.
Migration guide

Switch from Portkey in minutes

Replace the Portkey client with the standard OpenAI client. If you need load-balancing across providers, those are typically handled at the infrastructure layer.

Before, Portkey

from portkey_ai import Portkey

portkey = Portkey(
    api_key="pk_...",
    virtual_key="openai-vk-...",
)

response = portkey.chat.completions.create(
    messages=[{"role": "user", "content": query}],
    model="gpt-4o",
)
result = response.choices[0].message.content

After, Fluiq

import fluiq
fluiq.instrument(api_key="fl_...")

# Use the standard OpenAI client, no gateway, no virtual keys
from openai import OpenAI
client = OpenAI()

response = client.chat.completions.create(
    messages=[{"role": "user", "content": query}],
    model="gpt-4o",
)
result = response.choices[0].message.content

Ready to switch?

Free tier. No credit card. Full observability, security, and evals on your first LLM call.

50,000 free traces / month · 1,000 evals / month · 14-day retention