Skip to content

Portfolio Results

Read what the work earned across every client, verdict first, and see which automations are running on which account.

7 min read

A retainer gets tested by two questions. What moved after the team finished the work, and what keeps being checked when nobody remembers to check it?

Results and Automations answer those across every client at once. Both are lenses on Portfolio Actions, reachable from the Portfolio view switch in the toolbar, so any brand filter you set on the page follows you into them.

This is a full accounting, not a highlight reel. Good news reads first, but no movement, a drop, and Couldn't measure all stay on the page. That is what makes the view survive a renewal call.

Results: the verdict leads

Four counts sit above the table and each one filters it.

VerdictWhat it means
EarnedThe chosen measure improved between the before and after readings
No movementThe measure held steady across the window
Coincided with a dropThe measure fell in the same window
Couldn't measureNo honest before-and-after comparison was possible

Under the counts, one sentence states what actually happened, for example "7 changes earned a measurable lift across 4 clients." It stands down while a verdict filter is on, because the counts then describe a different slice than the table.

The table itself is grouped best news first: Earned, then Coincided with a drop, then No movement, then Couldn't measure. Each row is a sentence about what changed, followed by the client, the page when there is one, and when Trakkr measured it. Only Earned takes an accent mark. Sending everything that is not a drop to a green tick would mark every unmeasurable row as a win.

Select a row to open the evidence, including the before and after figures and their source. When a change was rolled back, the row says so with a reverted note; it is not a separate verdict.

When more than one kind of work is present, filter pills appear with a count each: Technical fix, Page improvement, Content refresh, New content, Outreach draft, Reply draft, Campaign, Setup, and Watch. A filter group with one value filters nothing, so with a single kind of work the pills stay hidden.

Warning
Results compare before and after. They do not prove causation. Say a change coincided with an outcome, never that it caused or boosted it.

Why a portfolio can be mostly unmeasured

A real portfolio can be mostly Couldn't measure, especially early in an engagement. It is almost always a tracking gap rather than a wall of failed work.

The usual reasons:

  • Crawler tracking is not connected, so Trakkr cannot see AI crawler visits to the page.
  • Search Console is not connected, so clicks and search activity cannot be compared.
  • The work is not linked to a page, so there is nothing to take readings on.
  • The page had no activity in the window, before or after.
  • Citation history was not available for that window.
  • There was no before reading, because the work finished before a baseline existed.

When unmeasured rows dominate, Trakkr stops printing them one by one. If at least three results are unmeasured and they are at least 40% of the total, the page states the count and the shared reason once, says how many clients it spans, and offers Show only these. A long list of unmeasured work looks like success or failure depending on how it is styled, and neither reading is honest.

Turning gaps into answers

Work through this per client, not once for the agency:

  1. 1.Connect crawler tracking on the client's site and confirm visits are arriving.
  2. 2.Connect Google Search Console with the property that covers the exact domain and pages.
  3. 3.Attach the right page to every page-based action before its window closes.
  4. 4.Let a baseline form. A new connection cannot recreate a missing before reading.
  5. 5.Keep reporting running, because citation and visibility history comes from completed reports.
Tip
Do this during onboarding. Connect crawler tracking and Search Console before the first material page change; you cannot recover a trustworthy baseline afterwards.

Building a client update

Filter the page to a single client and a Copy client update button appears next to the filter pills. It puts a plain-text summary on your clipboard: the client name, the date, up to five earned results with their sentences, and the full tally.

It pulls that client's complete result set rather than only the rows on screen, so the accounting is honest even when the table is paginated. Treat it as a draft and add the context only you have.

What belongs in front of the client: earned results with their figures, no movement when it changes the next decision, a drop when it changes risk or scope, the full count of measured and unmeasured work, and the connection you need when Couldn't measure is material. What can stay internal: failed checks that were retried with no client impact, drafts that never reached approval, and permission detail that only describes how your team operates.

Never hide a poor outcome. The line is relevance, not comfort.

Automations: what keeps checking

The Automations lens groups every automation by client. Four counts sit on top, and the first three filter the table: Running, Paused, Not run yet, and Found · 30d.

Each row shows the automation's name, what it is allowed to do, its activity over the last 30 days, its state, and when it last ran. States are Running, Paused, or Archived. A row with no runs says Not run yet rather than showing a date.

Allowed to is the honest summary of authority after every team and client control has been applied, not the level someone once requested. With nothing raised it reads Suggest only. With one area raised it names that area and its level, for example "Technical fix: Prepare drafts". With several raised it summarizes: "Can change the site in 2 areas" or "Can prepare drafts in 3 areas". The underlying levels are Tells you, Suggest only, Prepare drafts, Prepare for approval, and Handle it.

The Last 30 days cell reads as a sentence: how many checks ran, how many found something (or "nothing to flag"), and how many failed.

Use this lens to catch three things before a client does: an important account with no automation on it, an automation that has never run, and one that keeps failing. A finding is not a change. It can become a suggested action that still waits on your decision.

Common questions

Why does Earned not say the action caused the change?

Because a before-and-after reading is not a controlled test. Trakkr states what moved in the same window and stops there.

Is Couldn't measure a failure?

No. It is a first-class result. Open the reason, fix the missing connection or the missing page link, and the next action starts with a baseline.

Why do the counts stay larger than the rows after I filter?

The counts describe the distribution across the clients you have selected. The table shows the slice you picked from it. That is also why the summary sentence disappears while a verdict filter is on.

Why is Copy client update missing?

It only appears when exactly one client is filtered and that client has at least one result. A portfolio-wide clipboard summary would mix clients into one update.

Can I send the Automations table to a client?

You can, but most clients want the shorter version: what is being watched, what it found, and what needs a decision. Keep permission levels and failure counts for the account team unless the contract asks otherwise.

How fresh is the page?

Both lenses read stored results and automation history. Opening the page does not start a new measurement or trigger a check.

Press ? for keyboard shortcuts