DOCS

Goals & targets

Set a number, and let RepCue judge it against the calendar rather than the raw total.

A chart without a target is trivia. Goals turn "suggestion adoption is 34%" into "adoption is 34% against a 45% target, and we are three weeks into the month", which is a management conversation rather than a number.

Setting a goal

Goals live at Goals in the console. Each one is four decisions:

FieldOptions
ScopeThe whole org, one team, or one person
MetricSee the table below
TargetThe number to hit
Periodweek, month or quarter

Managers can set goals for the teams they manage and the people in them. Admins can set goals anywhere in the org.

The metrics

MetricMeaningShape
adoption_rateSuggestions used ÷ suggestions shownRate
calls_per_weekCall volumeCumulative
talk_ratioShare of the call the rep spokeRate (lower is better)
win_rateWon ÷ closed dealsRate
scorecard_avgMean coaching scorecardRate
live_hoursLive copilot hours consumedCumulative

The shape is not cosmetic: it decides what "on track" means.

How pacing works

RepCue judges a goal against what should have been achieved by now, not against the full target. That value is reported as expectedByNow.

  • Cumulative metrics (calls_per_week, live_hours) accrue over the period. Halfway through the month, the expectation is half the target. Forty calls against a hundred-call month is on track on day 15 and behind on day 27.
  • Rate metrics (adoption_rate, win_rate, scorecard_avg, talk_ratio) are already complete at any moment: a 45% adoption target expects 45% from day one, because a ratio does not accumulate.

talk_ratio is the one inverted metric. A rep under the target is ahead of it, not behind it.

Status semantics

Each goal reports one of four statuses:

  • ahead: better than the expectation by more than the tolerance band.
  • on_track: within the tolerance band, which is 5% of the target. The band scales with the number, so it means the same thing for a five-point scorecard and a two-hundred-hour quota.
  • behind: worse than the expectation by more than the band.
  • unknown: there is no underlying data yet.

unknown is never reported as behind. A rep who has not taken a call this month has not missed their adoption target; there is simply nothing to measure. Reporting that as failure would be a lie about a person's performance, so the API returns actual: null and the console prints a dash. This is the same honesty rule the rest of the product follows: a value on screen is real, or it is visibly absent.

Alongside the status you get attainment (actual ÷ target), elapsed (share of the period gone) and daysRemaining, so a dashboard can show pace without recomputing anything.

Where goals show up

  • Goals: the full list with progress bars.
  • Role dashboards: a rep sees the goals that cover them; a manager sees their teams' goals.
  • Digests: goal lines are included in the daily and weekly emails, measured over each goal's own period rather than the digest window, so a weekly email about a quarterly goal still reports the quarter.

The digest and the dashboard share one implementation, so they cannot disagree with each other.

API

GET /v1/goals, POST /v1/goals, PATCH /v1/goals/:id, DELETE /v1/goals/:id, and GET /v1/goals/progress?scope= for target vs. actual vs. expectedByNow. See Public API & webhooks.