Experiment tracking that speaks reinforcement learning
Environments, episodes and steps as first-class citizens. Logged at full rate, from a lab that trains RL systems every day.

Aggregate metrics can give you a false sense of security - the curve looks healthy, so you assume the agent is doing what you want. The problem is that episode-level data has always been painful to get at, so the tools have quietly trained us to throw it away. Metrana changed how we work: the aggregate metrics tell us where to look, and the episodes tell us what's really going on. You learn what your agent is actually doing by watching it - and that's where the pathological behaviours show up.
The problem
Your run isn't one execution; it's thousands.
A flat run_id can't hold environments × episodes × steps, so you end up hacking a hierarchy onto a flat table.
Every tracker has a ceiling.
Rate limits, metric caps, sampling. Past the ceiling, "log less" becomes the default - and the signal you dropped is the one that would have explained the collapse.
The metric was there. It wasn't found in time.
Thousands of series, one dashboard, manual digging. By the time you find the series that moved first, the run has burned the compute.
What RL-native means in practice

RL structure built in
Per-environment, per-episode and per-step views, with a step and episode slider instead of a flat time axis. Track rewards, signals and trajectories across every agent in the system.

Watch your agents, not just their metrics
Replay any episode in any environment and catch the failure mode that only appears a fraction of the time - invisible in the reward curve, obvious in the replay.

Fork runs, environments included
Branch a run mid-training and the environments fork with it: same state, same seed, two futures. Change one thing and watch the consequences diverge from a shared starting point.

Compare and aggregate at environment scale
Line up metrics across environments side by side, plot them on one chart, or aggregate over all of them. Chase a divergence the moment one environment forks. The failure mode that only occurs in 0.5% of environments is difficult to spot with traditional flat trackers.

Analysis agent (early access)
Reward collapse, diverging environments, and policy regressions surfaced automatically across millions of metrics; deep diagnosis and recommendations are being built with design partners.
Full-rate ingestion
Log every step of every episode across thousands of environments and keep all of it. 85k series entries and 5M+ data points per second, sustained, with no sampling and no dropping. Every number on this page links to a published benchmark.
Pricing that can't surprise you
Pay for what you log; set a spend cap with automated alerts as you approach it; we throttle before we ever bill past it.
for rl_step in range(num_updates):
rollouts = collect_rollouts() # rewards: [num_envs, T], episodes: [num_envs, T], env_ids: [num_envs,]
metrana.log_rl_environment_step(
"reward", rollouts.rewards, rl_step=rl_step,
env_id=env_ids, episode=rollouts.episodes,
)
for env_i, ep_discounted_return in finished_episode_discounted_returns(rollouts):
metrana.log_rl_episode(
"episode_discounted_return", ep_discounted_return,
rl_step=rl_step, env_id=env_ids[env_i],
episode=rollouts.last_episode[env_i],
)Environments, episodes and steps are arguments, not naming conventions: pass env_id, episode and rl_step and the hierarchy is preserved end to end.

Built by an RL lab for its own runs
Metrana comes out of Recurvia, a deep reinforcement-learning lab working on adaptive optimisation (Paramorph). It started as internal instrumentation because our training runs outgrew every tracker we tried, and we weren't willing to log less or slow our workflows to fit the tool. We now run the same infrastructure for partner labs, maintained by a team that trains foundation models and depends on it too.
Partner labs get direct roadmap input. Some of the RL features in the tool exist because a partner lab asked for them.
Where it runs
Industrial control
Chips, plants and data centres: long-horizon runs where the failing step has to be findable.
Simulation & robotics
Thousands of parallel environments. Compare sim and real-world runs side by side to find where the transfer gap opens.
LLM & foundation-model post-training
RL-based post-training, and pre-training metric volumes that break default tooling.
Games & large-scale simulation
Full environment fleets logged without downsampling.
Pilot in an afternoon.
See it on your own run, in thirty minutes, alongside your existing stack. Nothing migrates. If it doesn't earn its place, turn it off.
The questions RL teams ask first
No. Metrana runs alongside your existing stack, and most pilots start by dual-logging a single run — nothing has to move before you know whether it earns its place.







