What is TruLens?
TruLens is an open-source Python library for tracing and evaluating LLM applications and agents. You wrap functions with an @instrument decorator, each call becomes an OpenTelemetry span, and feedback functions (LLM judges or smaller models) score the spans as they land or later over a saved dataset. It is best known for the RAG triad of context relevance, groundedness and answer relevance, and now ships seven agent evaluators such as PlanAdherence, ToolSelection and ExecutionEfficiency.
Results go to a local SQLite file by default, or to Postgres or Snowflake, and a Streamlit dashboard compares app versions on score, latency and cost. Judge providers include OpenAI, LiteLLM, Gemini, Bedrock, Hugging Face and Snowflake Cortex.
TruLens came from TruEra, which Snowflake agreed to buy in May 2024; Snowflake committed to keeping it open source and its engineers are now the main contributors. Version 2.16.0 was released on 19 October 2026 and supports Python 3.10 to 3.14.
Is TruLens worth it?
TruLens is a dependable choice for Python teams who want tracing and LLM-judged scoring in one library, and the obvious one if the data already lives in Snowflake. Its tracing moved to OpenTelemetry, so spans can be exported to Jaeger, Grafana Tempo, Datadog or any OTLP backend rather than staying in TruLens. Releases are frequent: eight minor versions between 23 July and 19 October 2026, according to GitHub.
The project is much smaller than its rivals. It has about 3,600 GitHub stars against roughly 19,200 for DeepEval and 26,700 for promptfoo, and PyPI recorded about 20,100 downloads of the trulens package in the past month. Fewer users means fewer answered questions and fewer third-party examples, and the top contributors by commit count are Snowflake staff, so the roadmap follows Snowflake's priorities. The Cortex provider and Snowflake connector are first-class packages; the Snowflake connector still stops at Python 3.13.
The benchmark claims in the README are the project's own. It reports a groundedness F1 of 0.81 on LLM-AggreFact and says its Agent GPA judge caught 267 of 281 human-annotated agent errors (95%), citing its own arXiv paper. These are useful signals, not independent results, and like every LLM-judged score they move when the judge model changes.
Cost works as it does in DeepEval or Ragas: each feedback function on each record is at least one judge call. The live bug list shows where the accounting is thin; an open issue from 11 October 2026 reports that feedback functions on the LangChain provider record no tokens or cost, which undermines the cost comparison the dashboard is built around. In our reading of the source we found no usage telemetry, which compares well with DeepEval and Ragas, both of which send usage events by default.
Where it earns its place
A data team at a retailer running RAG search over product content stored in Snowflake
Score answer quality without moving traces out of the warehouse
Log TruLens records to Snowflake through the connector and use the Cortex provider as the judge, so prompts and scores stay inside the account. The library is free; judge calls become Cortex usage on the Snowflake bill rather than a separate API account.
An ML engineer comparing three retrieval configurations for a support bot
Pick the cheapest version that keeps groundedness up
Run each version over the same question set with the Run API, score the RAG triad, and read the dashboard leaderboard for score, latency and cost side by side. Sampling the dataset keeps judge costs down while iterating.
A platform engineer at a company already standardised on OpenTelemetry
Add evaluation scores without adopting another tracing backend
Instrument with TruLens decorators and export spans over OTLP to the existing Tempo or Datadog setup, keeping TruLens for scoring and the dashboard for experiments.
Before you commit
- Setup
- pip install trulens plus a provider package such as trulens-providers-openai on Python 3.10 to 3.14; decorate functions with @instrument, define feedback functions and open the Streamlit dashboard.
- Integrations
- Judge providers for OpenAI, Azure OpenAI, LiteLLM, Gemini, Bedrock, Snowflake Cortex, Hugging Face and LangChain models; app integrations for LangChain, LangGraph and LlamaIndex; MCP tool-call spans; OTLP export.
- Data and privacy
- MIT licence. Records stay in local SQLite by default, or in your own Postgres or Snowflake. Inputs and outputs are sent to whichever judge provider you configure.
- Cost at scale
- The library is free. Judge cost scales with records times feedback functions times runs; Snowflake users pay Cortex usage instead of a third-party API bill.
- Limits
- 141 open issues and pull requests; the Snowflake connector and Cortex provider stop at Python 3.13; token and cost capture is missing for the LangChain provider's feedback functions.
What’s good
- OpenTelemetry tracing exports to any OTLP backend
- RAG triad plus seven agent-specific evaluators
- MIT licence; Snowflake maintains it with frequent releases
- Local SQLite by default, Postgres or Snowflake for teams
- No usage telemetry found in the source
What’s not
- Small community: about 3,600 stars
- Roadmap leans towards Snowflake Cortex and Snowflake storage
- Accuracy figures are self-reported
- Judge calls per record are the real running cost
- Token and cost tracking incomplete for some providers
Best for
Python teams evaluating RAG apps or agents, especially those already storing data in Snowflake.
TruLens alternatives
TruLens: common questions
- Is TruLens worth it?
- A sound, OpenTelemetry-native eval library with a corporate owner behind it, held back by a small community and a pull towards Snowflake. We rate it 3.9 out of 5.
- How much does TruLens cost?
- Free and open source under the MIT licence. You pay for the judge-model calls each feedback function makes; Snowflake's hosted AI Observability is a separate product billed through Snowflake.
- What are the downsides of TruLens?
- Small community: about 3,600 stars; roadmap leans towards Snowflake Cortex and Snowflake storage; accuracy figures are self-reported; judge calls per record are the real running cost; token and cost tracking incomplete for some providers.
- Who is TruLens best for?
- Python teams evaluating RAG apps or agents, especially those already storing data in Snowflake.
- How much does TruLens cost for a team or in production?
- The library is free. Judge cost scales with records times feedback functions times runs; Snowflake users pay Cortex usage instead of a third-party API bill.
- Is TruLens safe for company data?
- MIT licence. Records stay in local SQLite by default, or in your own Postgres or Snowflake. Inputs and outputs are sent to whichever judge provider you configure.
- What are the best TruLens alternatives?
- The closest alternatives we have reviewed are DeepEval, Arize Phoenix, Opik and Ragas.
Answers checked Nov 2, 2026.