> ## Documentation Index
> Fetch the complete documentation index at: https://docs.honeyhive.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Custom Charts

> How to use HoneyHive's Discover interface to measure performance and discover interesting trends.

<Frame>
  <img src="https://mintcdn.com/honeyhiveai/9BxiwYxg7j6yRoey/images/monitoringquery.png?fit=max&auto=format&n=9BxiwYxg7j6yRoey&q=85&s=98598eab2ff48ede9fc4c502a43c99d8" alt="HoneyHive Chart Interface Example" width="3024" height="1556" data-path="images/monitoringquery.png" />
</Frame>

## Quick Start: Building Your First Chart

Creating insightful visualizations in HoneyHive is straightforward.

<Steps>
  <Step title="Access Discover">
    Click **New Chart** in your Dashboard, or navigate to the **Discover** tab from the sidebar.
  </Step>

  <Step title="Select Your Data Source">
    Choose from three data scopes:

    | Scope           | What it covers                                          |
    | --------------- | ------------------------------------------------------- |
    | **Sessions**    | Full user interactions/traces (entire conversations)    |
    | **Completions** | Individual LLM calls                                    |
    | **All Events**  | Any tracked step in your pipeline, including tool calls |
  </Step>

  <Step title="Configure Your Visualization">
    | Setting         | Description                                                                  |
    | --------------- | ---------------------------------------------------------------------------- |
    | **Event**       | Which event type to analyze (default: All Sessions/Completions/Events)       |
    | **Metric**      | What to measure (e.g., Request Volume, Duration, Cost, or custom evaluators) |
    | **Aggregation** | How to calculate (Sum, Average, Median, 99th Percentile, etc.)               |
  </Step>

  <Step title="Refine Your Analysis (Optional)">
    | Setting        | Description                                                                |
    | -------------- | -------------------------------------------------------------------------- |
    | **Filter**     | Narrow down to specific data segments (e.g., `source = "production"`)      |
    | **Group By**   | Split results by properties (e.g., `prompt_version`, `model`, `user_tier`) |
    | **Time Range** | Set your analysis window (1d, 7d, 30d, etc.)                               |
  </Step>
</Steps>

## Understanding Your Data

To build effective charts, it helps to understand the data components available in HoneyHive.

### Metrics

Metrics are the numerical values you visualize in charts.

<AccordionGroup>
  <Accordion title="Usage Metrics" icon="chart-simple">
    | Metric             | What it tells you                                              |
    | ------------------ | -------------------------------------------------------------- |
    | **Request Volume** | Queries over time. Spot usage spikes or drops.                 |
    | **Cost**           | Direct expenses. See if that new feature is breaking the bank. |
    | **Duration**       | System latency. Slow responses kill engagement.                |
  </Accordion>

  <Accordion title="Evaluators" icon="flask">
    Your custom quality checks, either [Python](/v2/evaluators/python) or [LLM-based](/v2/evaluators/llm). Must return `float` or `boolean` to chart.

    | Example          | Type      | Question it answers                               |
    | ---------------- | --------- | ------------------------------------------------- |
    | Keyword Presence | `boolean` | Does every product review mention the product?    |
    | Coherence Score  | `float`   | How logically sound are multi-turn conversations? |
  </Accordion>

  <Accordion title="User Feedback" icon="comments">
    The voice of your users, quantified. Accepts `float` or `boolean` inputs.

    | Example           | Type      | Question it answers                              |
    | ----------------- | --------- | ------------------------------------------------ |
    | Usefulness Rating | `float`   | On a scale of 1-5, how useful was this response? |
    | Used in Report    | `boolean` | Did the user actually use this in their report?  |
  </Accordion>
</AccordionGroup>

### Properties

Properties provide context for your metrics. All properties in the [enrichment schema](/v2/tracing/enrichment-schema) such as `config`, `user properties`, `feedback`, `metrics`, and `metadata` can be used to slice and dice your data.

<Tip>Metrics chart performance. Properties unveil the context behind that performance. Both are crucial for exploratory data analysis.</Tip>

## Chart Types

Each chart type focuses on a different part of your LLM pipeline.

<Tabs>
  <Tab title="Completions">
    **Focus:** Individual LLM calls.

    **Key Metrics:** `cost`, `duration`, `tokens`, `errors`, and any specified evaluators.

    <Accordion title="Example use case" defaultOpen>
      **Hypothesis:** "Longer user messages cause more token waste."

      **Test:** Chart `Average Unused Output Tokens` grouped by `binned_input_length`.
    </Accordion>
  </Tab>

  <Tab title="Sessions">
    **Focus:** Full multi-turn user interactions and entire traces.

    **Key Metrics:** `User Turns`, `Session Duration`, `Avg User Rating`, `Task Completion Rate`.

    <Accordion title="Example use case" defaultOpen>
      **Hypothesis:** "Agents start looping after `n` turns."

      **Test:** Chart `Agent Trajectory Evaluator` grouped by `Number of turns`.
    </Accordion>
  </Tab>

  <Tab title="Events">
    **Focus:** Specific agents, tools, or steps in your pipeline.

    **Key Metrics:** `Retrieval Latency`, `Synthesis Quality`, `Tool Choice Accuracy`.

    <Accordion title="Example use case" defaultOpen>
      **Hypothesis:** "Our reranker is the bottleneck in high-load scenarios."

      **Test:** Chart `99th Percentile Rerank Time` vs. `Requests per Minute`.
    </Accordion>
  </Tab>
</Tabs>

## Next Steps

<CardGroup cols={2}>
  <Card title="Set Up Alerts" icon="bell" href="/v2/monitoring/alerts/alerts_overview">
    Get notified when metrics exceed thresholds
  </Card>

  <Card title="Online Evaluations" icon="chart-line" href="/v2/monitoring/onlineevals">
    Run evaluators automatically on production traces
  </Card>
</CardGroup>
