Skip to main content
Card class: HeroCategory: Project Management

At a glance

The percentage of Vortex IQ findings created in Teamwork in the last 90 days that have been marked complete. On agency Teamwork installations this is the agency’s per-client batting average and a leading indicator of retainer-margin health: a falling rate against rising logged hours is the canonical “we’re working but not closing” pattern.
The formularesolved_in_window ÷ created_in_window, where resolved_in_window counts Teamwork tasks with vortex_iq_finding_id, completed = true, AND completed-on within the 90-day window; created_in_window counts tasks with the same custom field set and created-on within the same window.
API endpointsTeamwork v3 API GET /projects/api/v3/tasks.json paged by meta.page.hasMore. We bucket by vortex_iq_finding_id to avoid double-counting if a finding was re-created.
WindowRolling 90 days, refreshed hourly. The headline number updates on every webhook for the live count; the rate calculation is hourly to smooth single-task volatility.
What “resolved” meanscompleted = true. Teamwork’s task model uses a single completion boolean; there is no separate Won’t Do state. The agency’s convention is to mark complete with a comment explaining the close decision.
Project scopeAll vortex_iq_outbound Teamwork projects across all connected Sites.
Archived projectsExcluded from both numerator and denominator.
Time zoneUTC for both created-on and completed-on. The 90-day window aligns to UTC.
Alert trigger< 50% raises a critical alert.
Sentiment thresholdsGauge: green ≥ 75%, amber 50-74%, red < 50%.
Multi-Site / multi-project aggregationYes, computed on summed numerator and denominator. Per-Site and per-project stack panels available.
Rolesowner, operations

Calculation

Calculated automatically from your Teamwork data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A UK ecommerce-focused agency running 6 retainer clients on Teamwork. Snapshot taken on 02 May 26 at 16:00 BST.
Last 90 days (02 Feb 26 - 02 May 26), all 6 clientsCount
Findings created (Teamwork tasks with vortex_iq_finding_id, created-on in window)84
Findings completed (above set, AND completed = true, completed-on in window)56
Findings still open from window22
Findings re-created (counted once on first close in numerator)6
Resolution rate = 56 ÷ 84
                = 0.667
                = 66.7%, displayed as 67%
What the merchant should read into this:
  1. 67% sits in the amber band (50-74%). Healthy for an agency Teamwork installation; the per-client breakdown is what drives action.
  2. Per-client breakdown matters more than the blended number. A 67% blended rate often hides one or two clients running at 40-45% who drag the average. Open the per-project stack panel; the lowest-rate client is the leading indicator of retainer-margin issues.
  3. Pair this card with Teamwork’s billable-hours report. The agency-specific signal is rate-vs-hours: a falling rate while hours stay flat means the team is working but not closing, a margin-leak pattern. A falling rate while hours fall is a paused-client pattern, less concerning operationally but a relationship-cooling signal.
  4. Compare against Findings Open trend. If open count is rising for three weeks while resolution rate sits at 67%, the audit programme is producing more findings than the agency can absorb, which on a retainer becomes a renegotiation conversation with the client.
  5. Aim for 75% sustained on the blended rate, with no single client below 60%. Per-client floors matter more than the overall on agencies; a single client at 40% means that client is at risk of churn, regardless of how strong the other clients are running.

Sibling cards merchants should reference together

CardWhy pair it with Resolution RateWhat the combination tells you
VortexIQ Findings OpenRate’s denominator-half.Falling rate + climbing open count = capacity bottleneck.
Abandoned Findings (>14d)Tasks that count in the denominator but never become numerators.High abandoned + low rate = retainer-margin or paused-client signal.
Avg Time-to-Fix (days)Cycle time inside this rate.High rate + low time-to-fix = excellent. High rate + high time-to-fix = closing eventually but slowly.
Tickets Resolved (7d)Short-window throughput of all tasks.High overall throughput but low findings rate = agency is shipping client features but skipping audit closure.
Sprint Velocity (avg)Capacity ceiling.Flat rate with rising velocity = audit work not entering sprints.
Throughput TrendThe slope.A rate dipping while throughput climbs = deliberate prioritisation away from audit work.
Sprint ProgressWhether findings are getting committed to the current sprint.Low sprint progress + low rate = findings queued but never pulled in.

Reconciling against the vendor’s own dashboard

Where to look in Teamwork’s own UI:
teamwork.com then open Reports in the left navigation. The Tasks Overview report aggregates completed-vs-created counts across selected projects. Set the time range to Last 90 days and apply the filter Custom field: vortex_iq_finding_id has any value. Teamwork’s Reports module also exposes a Project Health widget that approximates this rate per project and can be pinned to a custom dashboard.
For agency-wide visibility across multiple Sites, the workaround is to maintain one dashboard per Site; Teamwork does not currently support cross-Site reporting natively. Why our number may legitimately differ from a Teamwork report:
ReasonDirectionWhy
Window definitionEitherTeamwork’s Reports “Last 90 days” rolls daily at midnight in your account-profile timezone; our window rolls hourly in UTC.
Re-created findingsOurs lowerTeamwork counts each completion event; we count once per finding-id.
Subtask handlingEitherTeamwork’s report can be configured to include or exclude subtasks; our default is to count subtasks with their own vortex_iq_finding_id.
Archived projectsSameBoth we and Teamwork’s default report exclude archived projects.
Multi-Site aggregationOurs widerTeamwork is per-Site; we sum across all connected Sites.
Cross-connector reconciliation. Teamwork resolution rate vs operations-health peers:
CardExpected relationshipWhat causes the divergence
datadog.dd_health_scoreOften correlated for engineering-heavy clients. The agency’s rate dips for that client when Datadog incidents spike on the client’s stack.Use the per-project stack panel here; the per-client correlation is the actionable agency-margin reasoning.
newrelic.nr_apdexSame shape.Same.

Known limitations / merchant FAQs

My Teamwork Tasks Overview report shows 73% but you say 67%. Why? Six points of gap is normal. Most likely: re-created tasks (Teamwork counts each completion; we count once per finding-id), or window-rolling timezone (UTC vs profile-timezone). Pin a per-project stack panel and the gap usually closes to 2-3 points. Does a “marked complete with comment ‘won’t do’” count as resolved? Yes. Teamwork has only a single completion boolean; the comment is the team’s documentation, not a separate state. We treat all completions as resolutions because closing the loop is what the rate measures. Our blended rate is 67% but Client B is at 38%. What do I do? The per-client number is the actionable signal. 38% on a single client is a renegotiation conversation: either the agency is under-delivering for the retainer, or the audit programme is producing more findings than the engagement scope assumes. Open this card filtered to Client B, plus Findings Open, Abandoned Findings, and Teamwork’s billable-hours report for that client. Within 10 minutes you have the numbers for the client check-in. Our overall rate sits at 45%. Should I be concerned? Yes. Below 50% is the alarm threshold. On agency Teamwork this is the leading indicator of a margin problem across the portfolio, not a single-client issue. We use multiple Teamwork Sites. Which Site’s rate matters most? The lowest. Open the per-Site stack panel; on multi-Site agencies the lowest-rate Site is usually the one with the smaller team or the more transactional client mix. Throughput dropped this week, rate is still high. What’s happening? “Team closed everything easy and left the hard stuff.” Open Avg Time-to-Fix, if mean cycle time climbed alongside the throughput drop, the team has finished quick-wins and is starting on heavier findings. Healthy phase, lasts 1-3 weeks. Today’s rate looks volatile. Why? At low resolution volumes the rate is sensitive: 5 resolutions out of 8 is 62.5% and one extra close moves it to 75%. The 90-day window makes daily volatility small but visible. The 7-day moving rate is less noisy. Agency Teamwork installations typically see end-of-week clustering because billable-time approval drives the close cadence. Multi-team reporting: how do I see resolution rate per agency team within one Site? Teamwork’s Teams feature is the natural boundary. Per-team rate is on the roadmap; until then, the workaround is to use one project per team and tag each as a separate vortex_iq_outbound route in connector setup, the per-project stack reflects per-team breakdown. Is Teamwork the right tool for tracking this metric? For agencies and consultancies running multiple retainer clients with billable-hours-driven margins, yes. The dual-significance reading (operations discipline plus retainer-margin signal) is unique to Teamwork because of the integrated time-tracking. In-house ecommerce ops teams will find Asana/ClickUp/Monday more natural; engineering-only teams will find Linear cleaner; PMOs will find Smartsheet richer. Teamwork’s strength is the agency-context overlay this card sits naturally next to. Resolution rate climbed but I don’t think the team did anything different. What changed? Three usual causes. (1) Audit programme produced fewer findings (denominator shrank). Check Findings Open trend. (2) A bulk close (the team did a portfolio-wide stale-task review). Check Teamwork’s Activity stream. (3) A project was archived or removed from connector routing; tasks in that project drop out of the denominator while completed counts stay, lifting the rate by 5-10 points overnight.

Tracked live in Vortex IQ Nerve Centre

Finding Resolution Rate (90d) is one of hundreds of KPI pulses Vortex IQ tracks across Teamwork and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.