{"slug": "github-copilot-dashboard", "title": "GitHub Copilot Dashboard", "summary": "GitHub's Copilot Chat dashboard, built on OpenTelemetry traces, tracks token spend, cache savings, model routing, latency, tool activity, background agents, and errors, with panels scoped by service and operation. The dashboard requires SigNoz v0.135.0 or newer and imports via the V2 dashboard schema, computing total tokens as input plus output because Copilot emits no total_tokens attribute. It monitors prompt cache hit rate as the biggest cost lever and distinguishes chat spans from invoke_agent spans to avoid double counting.", "body_md": "This dashboard provides a comprehensive view of `GitHub Copilot Chat`\n\nusing the OpenTelemetry traces the Copilot Chat extension exports natively. Every panel keys off the GenAI semantic-convention attributes Copilot emits: `gen_ai.operation.name`\n\n(`invoke_agent`\n\n, `chat`\n\n, `execute_tool`\n\n, `embeddings`\n\n), `gen_ai.response.model`\n\n, `gen_ai.usage.*`\n\n, `gen_ai.tool.name`\n\n, `gen_ai.agent.name`\n\n, and `gen_ai.conversation.id`\n\n. Use the `Service`\n\npicker at the top to scope every panel to one or more Copilot rollouts.\n\nToken panels are deliberately scoped to `gen_ai.operation.name = 'chat'`\n\n. The `invoke_agent`\n\nspan carries a roll-up of its children's token counts, so summing across every span would roughly double count. Copilot also emits no `gen_ai.usage.total_tokens`\n\n, which is why the total is computed as input plus output.\n\n## Dashboard Preview\n\nRecommended. Uses the [V2 dashboard schema](https://signoz.io/docs/dashboards/dashboards-v2-api/) and needs SigNoz v0.135.0 or newer.\n\nImport it in SigNoz with **Dashboards → + New dashboard → Import JSON**. [Import guide](https://signoz.io/docs/dashboards/import-dashboard/)\n\n## What This Dashboard Monitors\n\nThis dashboard tracks the cost, performance, and reliability of GitHub Copilot Chat using OpenTelemetry trace data to help you:\n\n**Track Token Spend**: See total, cached, and reasoning tokens across model calls, and how they trend over time.** Measure Cache Savings**: Watch the prompt cache hit rate, the single biggest lever on Copilot cost, since cached input is billed at a large discount.**Compare Models**: Break down call volume and token consumption per model to spot when Copilot silently routes work to a different one.** Monitor Perceived Latency**: Track time to first chunk alongside end-to-end model call latency, so you see what developers actually experience as slowness.**Understand Tool Activity**: Identify which tools the agent reaches for, which are slowest, and how much traffic your MCP servers are earning.** See Background Work**: Surface internal agents such as title generation that spend tokens without any visible chat turn.** Catch Errors Early**: Watch failing spans over time and drill straight into the conversation turn that produced them.\n\n## Panels Included\n\n### Summary (Top Rows)\n\n| Panel | Type | What It Shows |\n|---|---|---|\nTotal Tokens | Value | Input plus output tokens across `chat` spans, summed because Copilot emits no `total_tokens` attribute |\nModel Calls | Value | Count of `chat` spans, the completions requested from the model |\nTool Calls | Value | Count of `execute_tool` spans, such as `read_file` , `grep_search` , or an MCP tool |\nConversations | Value | Distinct chat conversations, counted on `gen_ai.conversation.id` |\nPrompt Cache Hit Rate | Value | Share of input tokens served from the prompt cache, as a percentage |\nCached Input Tokens | Value | Input tokens read from the prompt cache rather than reprocessed |\nReasoning Tokens | Value | Output tokens spent on internal reasoning, billed as output but never shown in the chat |\nAvg Input Tokens per Call | Value | Average prompt size per model call, which rises as the agent carries more context per turn |\n\n### Token Usage\n\n**Token Usage Over Time**: Time-series graph of input, output, cached-input, and reasoning tokens. Cached input is a subset of input, not an additional charge.**Tokens by Model**: Pie chart of total tokens grouped by`gen_ai.response.model`\n\n, showing which model consumes the budget. Copilot routes different tasks to different models, so this rarely matches the call-count split.\n\n### Model Activity & Latency\n\n**Model Calls Over Time**: Time-series graph of`chat`\n\nspan volume grouped by`gen_ai.response.model`\n\n, useful for spotting when Copilot switches you to a different model.**Finish Reasons**: Pie chart of`gen_ai.response.finish_reasons`\n\n. A rising share of`[\"length\"]`\n\nmeans answers are being truncated by the token limit, and`[\"tool_calls\"]`\n\nmeans the model handed control back to the agent.**Model Call Latency**: Time-series graph of p50, p95, and p99 duration for`chat`\n\nspans.**Time to First Chunk**: Time-series graph of p50 and p95`gen_ai.response.time_to_first_chunk`\n\n, which is what a developer perceives as Copilot being slow, independent of total response length.\n\n### Tools\n\n**Tool Calls by Name**: Bar chart of`execute_tool`\n\nspans grouped by`gen_ai.tool.name`\n\n, showing what kind of work Copilot is trusted with.**MCP vs Built-in Tools**: Pie chart splitting tool calls between MCP server tools (names prefixed`mcp_`\n\n) and Copilot's built-in tools, so you can see whether your MCP servers are earning their place in the tool list.**Tool Latency (p95)**: Table of tools ranked by p95 execution time. Long-running terminal commands and remote MCP calls dominate here and directly stall the agent.\n\n### Agent Activity & Errors\n\n**Activity by Operation**: Pie chart of spans across`chat`\n\n,`execute_tool`\n\n,`invoke_agent`\n\n, and`embeddings`\n\n.**Activity by Agent**: Bar chart of spans grouped by`gen_ai.agent.name`\n\n, which surfaces background agents such as title generation that spend real tokens without any visible chat turn.**Errors Over Time**: Time-series graph of Copilot spans with an error status, most often a tool that failed rather than the model itself.** Recent Errors**: List of individual failing spans with their status message, duration, and trace ID, so you can click through to the conversation turn that produced the failure.", "url": "https://wpnews.pro/news/github-copilot-dashboard", "canonical_source": "https://signoz.io/docs/dashboards/dashboard-templates/github-copilot-dashboard", "published_at": "2026-08-12 00:00:00+00:00", "updated_at": "2026-08-14 18:48:21.339292+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools", "mlops"], "entities": ["GitHub Copilot Chat", "OpenTelemetry", "SigNoz"], "alternates": {"html": "https://wpnews.pro/news/github-copilot-dashboard", "markdown": "https://wpnews.pro/news/github-copilot-dashboard.md", "text": "https://wpnews.pro/news/github-copilot-dashboard.txt", "jsonld": "https://wpnews.pro/news/github-copilot-dashboard.jsonld"}}