Skip to main content
Nerve Centre KPIs · Audit Profile · Sentiment Settings Surfaces the daily ops questions a small team or agency lives with in Basecamp: is the OAuth token still good, is the findings list drowning, is anyone overloaded, and (most importantly) are the findings we filed as to-dos actually getting ticked complete or quietly going stale? Basecamp surfaces no rollups natively, so these checks are the only staleness and throughput signals a Basecamp shop has.

What this audit checks

Authentication & access

  • OAuth access token still valid (auth on /my/profile.json)
  • Refresh token present and not expired
  • Default project (bucket) exists and is not archived/trashed
  • Findings to-do list exists and is writable in the default project
  • Rate-limit headroom > 30% (50 req / 10s per account)

Backlog health

  • Open to-do count vs 30-day baseline (sudden growth = drowning signal)
  • Oldest open to-do age (>90 days = backlog rot)
  • Unassigned to-dos > 5 (work nobody owns)
  • Open vs done ratio skew (open growing faster than done = falling behind)

VortexIQ findings lifecycle (the stickiness test)

  • Abandoned findings - VortexIQ-created to-dos, completed=false, no updated_at change >14d
  • Finding resolution rate over rolling 90d (target >75%, critical <50%)
  • Avg time-to-fix for completed finding to-dos
  • Findings ticked complete without a close comment (silent dismissals - Basecamp has no Won’t-Do state)
  • Regression rate - to-dos re-opened (completion deleted) after being completed

Team capacity

  • Assignees with >10 open to-dos (overload signal)
  • Assignees with zero completions in 14d (parked work)
  • Cycle time degradation > 25% week-over-week
  • Scope added to the active findings cadence after it started

Cross-connector signals

  • Critical findings from sibling connectors (shopify/bigcommerce/adobe/cybersource) older than 7 days with no Basecamp to-do - coverage gap
  • Basecamp to-dos referencing decommissioned/archived integrations - stale work

Severity thresholds

SignalWarnCritical
vortexiq_findings_abandoned515
vortexiq_finding_resolution_rate7550
blocked_tickets38
unassigned_tickets520
oldest_open_ticket_age_days6090
cycle_time_change_pct2550
rate_limit_headroom_pct3010

Data sources

  • GET https://3.basecampapi.com/{account_id}/my/profile.json - Token validity + authorising person
  • GET https://3.basecampapi.com/{account_id}/projects.json - Project (bucket) list + active/archived state
  • GET https://3.basecampapi.com/{account_id}/buckets/{project_id}/todolists/{list_id}/todos.json - Open to-dos - backlog, abandoned, by-assignee, unassigned reads
  • GET https://3.basecampapi.com/{account_id}/buckets/{project_id}/todolists/{list_id}/todos/completed.json - Completed to-dos - throughput, resolution rate, time-to-fix
  • GET https://3.basecampapi.com/{account_id}/projects/{project_id}/people.json - Project members - assignee resolution + capacity calc