Skip to content

Squad Analytics

Squad analytics provides team-level performance intelligence that goes beyond individual contributor metrics. It surfaces how squads collaborate, where they're overloaded, and how their delivery patterns shift over time.

Squad Configuration

ShipLens organizes people into a two-level hierarchy: Teams contain one or more Squads. Each squad owns a set of domains — areas of the codebase that the squad is responsible for.

ConceptDescription
TeamTop-level organizational unit (e.g. "Engineering")
SquadA cross-functional group within a team (e.g. "Payments", "Platform")
Domain ownershipDomains assigned to a squad — used to attribute commits and detect cross-squad coupling

Domain ownership is configured per squad and drives most of the analytics below. When a commit touches files in a domain owned by squad A but authored by a member of squad B, it shows up as a cross-squad dependency.

Key Metrics

Cognitive Load Score

Measures how thinly a squad is spread across different domains and concerns. The score increases when:

  • Over-allocation — Squad members are committing across too many unrelated domains simultaneously
  • Scope creep — The squad is picking up work outside its owned domains at an increasing rate

A high cognitive load score is an early signal that a squad may need to shed responsibilities or grow.

Squad Dependency Map

Visualizes cross-squad coupling — how often one squad's work touches domains owned by another squad. High coupling between two squads suggests either a domain boundary problem or a need for closer collaboration.

The dependency map is built from commit analysis data: each commit that touches files in a domain owned by a different squad creates a dependency edge.

Tracks the squad's throughput over time, measured in analyzed commits weighted by complexity and impact. This is not a raw commit count — a single high-impact refactor carries more weight than ten config tweaks.

Velocity trends are most useful for spotting changes in a squad's delivery capacity, not for comparing squads against each other.

Delivery Type Distribution

Breaks down each squad's work by commit type (feat, fix, refactor, test, docs, chore, perf, style) over a configurable time window. This answers questions like:

  • Is the squad spending most of its time on bug fixes?
  • Has the ratio of new features to refactoring changed?
  • Is test coverage work keeping up with feature delivery?

PR Cycle Time

Measures how long pull requests take from open to merge, broken down by squad. Long cycle times can indicate review bottlenecks, unclear ownership, or PRs that are too large.

Domain Ownership

Each squad declares which domains it owns. Domains are derived during project understanding — they represent logical areas of the codebase (e.g. auth, billing, api, notifications).

When commit analysis runs, each commit's areas_affected field is matched against domain ownership to attribute work to the right squad. Commits touching unowned domains are flagged as potential scope creep.

Routes

RouteDescription
/c/:slug/teamsTeam overview with all squads and high-level metrics
/c/:slug/teams/:team_slugDetailed squad analytics for a specific team

Built with intelligence, not surveillance.