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

# Reports dashboard

> Personalize call, agent, contact, activity, and messaging metrics and interpret their filters.

export const Availability = ({lang = 'es', plan, addon, permission, route, status}) => {
  const L = lang === 'en' ? {
    plan: 'Plan',
    addon: 'Add-on',
    permission: 'Permission',
    route: 'Where',
    status: 'Status',
    addonNote: 'enabled on request',
    allPlans: 'All plans',
    beta: 'Beta',
    nuevo: 'New',
    soon: 'Coming soon'
  } : {
    plan: 'Plan',
    addon: 'Add-on',
    permission: 'Permiso',
    route: 'Dónde',
    status: 'Estado',
    addonNote: 'se activa a pedido',
    allPlans: 'Todos los planes',
    beta: 'Beta',
    nuevo: 'Nuevo',
    soon: 'Próximamente'
  };
  const items = [];
  if (plan) items.push([L.plan, plan]);
  if (addon) items.push([L.addon, `${addon} · ${L.addonNote}`]);
  if (permission) items.push([L.permission, permission]);
  if (route) items.push([L.route, route]);
  if (status) items.push([L.status, L[status] || status]);
  return <div style={{
    display: 'flex',
    flexWrap: 'wrap',
    gap: '6px 22px',
    padding: '12px 16px',
    margin: '4px 0 24px',
    border: '1px solid rgba(2, 82, 255, 0.28)',
    borderLeft: '3px solid #0252ff',
    borderRadius: '8px',
    background: 'rgba(2, 82, 255, 0.05)',
    fontSize: '13.5px',
    lineHeight: '1.5'
  }}>
      {items.map(([k, v]) => <div key={k} style={{
    display: 'flex',
    gap: '6px',
    alignItems: 'baseline'
  }}>
          <span style={{
    fontSize: '10.5px',
    fontWeight: 600,
    letterSpacing: '0.07em',
    textTransform: 'uppercase',
    opacity: 0.65
  }}>{k}</span>
          <span style={{
    fontWeight: 500
  }}>{v}</span>
        </div>)}
    </div>;
};

<Availability lang="en" route="Reports" permission="reports.read" />

Reports is a personal dashboard for the selected organization. Each member chooses widgets, arrangement, size, and visible indicators. It defaults to the last 30 days grouped by day.

## Indicators

| KPI          | Interpretation                                                                                                   |
| ------------ | ---------------------------------------------------------------------------------------------------------------- |
| Total calls  | All calls in the selected range.                                                                                 |
| Answer rate  | Answered calls divided by total calls.                                                                           |
| Success rate | Average of period success rates; each period uses calls with an analysis verdict. Unanalyzed calls are excluded. |
| New contacts | Contacts created within the range.                                                                               |

The change indicator compares the second half of the selected periods with the first half. If the first-half value is zero, the change is omitted. This differs from custom reports comparing against a preceding equally long range.

## Filters and time zones

Choose Today, Last 7/30/90 days, or a custom date range. Group trends by day, week, or month. The report time zone determines midnight boundaries for the range and is also used by queue activity and live monitoring.

Messaging, custom reports, and evaluations group using the selected report time zone. Current call, agent, contact, and activity widgets group in UTC even though the selected time zone changes the range boundaries. This particularly affects peak hours; use a custom hourly report for local-time grouping.

There is no dashboard-wide campaign or agent filter. Custom reports can apply those filters; campaign charts also appear within campaign details.

## Personalize

Choose **Customize**. Add widgets through the searchable gallery, drag to reorder, and cycle width between quarter, half, and full. Existing catalog widgets cannot be added twice. Hide KPI cards; hidden cards show a restore action while editing.

Changes save as you make them. **Done** closes editing. **Reset** asks for confirmation and restores the five default widgets and all four indicators. Configuration belongs to your user and organization; it does not alter colleagues’ dashboards.

## Widget catalog

| Category  | Available widgets                                                                     |
| --------- | ------------------------------------------------------------------------------------- |
| Calls     | Status, success rate, type, direction, disconnection reasons, peak hours.             |
| Agents    | Calls per agent, average duration, success rate, sentiment, tool use, voicemail rate. |
| Contacts  | Created contacts and contacts by country.                                             |
| Activity  | Organization call/message activity.                                                   |
| Messaging | Overview, human performance, response times, conversation tags, conversation topics.  |

The default widgets are calls by status, call success rate, calls per agent, contacts created, and peak hours. Messaging widgets appear only for inbox-enabled organizations. The gallery’s **Custom report** entry opens the call-report builder.

Success-rate denominators exclude calls without verdicts; voicemail rate uses the agent’s full call count, including inbound calls. Sentiment’s unclassified remainder includes calls without a classified sentiment. Average duration measures recorded conversation duration, not ringing time. Hover over metric help for its calculation.

The dashboard and its standard non-messaging widgets have no export action. Messaging detail views export XLSX; custom reports can open a call list that supports export. Billing contains usage and credit information rather than this widget catalog.

## Frequently asked questions

<AccordionGroup>
  <Accordion title="Why is success high while answer rate is low?">
    They use different denominators. Success uses calls with analysis verdicts, while answer rate uses all calls.
  </Accordion>

  <Accordion title="Why are peak hours offset?">
    The standard peak-hours widget groups in UTC. Use a custom hourly report for the selected local time zone.
  </Accordion>

  <Accordion title="Can I share my dashboard layout?">
    The current dashboard has no sharing or another-member view.
  </Accordion>

  <Accordion title="How do I restore an indicator?">
    Open Customize and choose Show on the hidden card, or reset the dashboard.
  </Accordion>

  <Accordion title="Why are messaging widgets missing?">
    They require inbox availability for the organization.
  </Accordion>
</AccordionGroup>

## See also

* [Custom reports](/en/reports/custom-reports)
* [Messaging reports](/en/reports/messaging)
* [Evaluations](/en/reports/evaluations)
* [Call log](/en/calls/call-log)
