<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Coder Legion - Recent posts tagged client-reports</title>
<link>https://coderlegion.com/tag/client-reports</link>
<description>Powered by Question2Answer</description>
<item>
<title>Site-Level Guidance: AI Actionable Insights Leave Beta</title>
<link>https://coderlegion.com/32480/site-level-guidance-ai-actionable-insights-leave-beta</link>
<description>&lt;p&gt;Agencies already know how to read a single PageSpeed Insights run. The harder job is turning twenty URLs on one host into a fix order a developer can ship without reopening every Lighthouse tab. Domain report Summary gave us a deterministic triage layer earlier this year: attention-free score, top pages, and merged opportunities. What was still missing was an optional synthesis step that names shared problems and ranks what to change first across the property.&lt;/p&gt;
&lt;p&gt;That step is out of beta. AI actionable insights now generate from a domain-report snapshot in Apogee Watcher: one site-level evaluation grounded in stored PageSpeed / Lighthouse evidence, not a one-off chat about a single homepage run. We also refreshed the site view so tests, pages, discovery, and reports stay in one workspace when you prepare that snapshot.&lt;/p&gt;
&lt;h3 id=&quot;what-site-level-ai-insights-do-with-pagespeed-evidence&quot;&gt;What site-level AI insights do with PageSpeed evidence&lt;/h3&gt;
&lt;p&gt;AI insights answer a different question from a single-URL Lighthouse chat. Tools that paste one PageSpeed Insights JSON into a language model explain that URL. Watcher starts from a domain report: up to about twenty pages already tested on mobile and desktop, with scores and opportunities already grouped. The model sees a bounded summary of site problems built from that snapshot. It returns a short narrative, a prioritised how-to-fix list, and evidence that points at shared templates, third parties, or headers when those patterns repeat.&lt;/p&gt;
&lt;p&gt;Lighthouse remains the source of truth for scores and audits. The insight does not re-score the site or invent metrics that were not in the stored runs. It synthesises what the deterministic report already shows, so an account lead can hand a developer an ordered checklist instead of a screenshot dump. That site-level default is deliberate: calling a model on every completed page test would use quota quickly and mostly rewrite audit text you already have.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Approach &lt;/th&gt;&lt;th&gt;Input &lt;/th&gt;&lt;th&gt;Typical output &lt;/th&gt;&lt;th&gt;Fit&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Single-URL AI + Lighthouse &lt;/td&gt;&lt;td&gt;One page, one strategy &lt;/td&gt;&lt;td&gt;Explain this run &lt;/td&gt;&lt;td&gt;Spot check or homepage deep dive&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Watcher AI insights &lt;/td&gt;&lt;td&gt;Domain-report snapshot (multi-page) &lt;/td&gt;&lt;td&gt;Prioritised site fix plan &lt;/td&gt;&lt;td&gt;Agency portfolio triage after scheduled tests&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;If you only need “what is red on this URL right now,” PageSpeed Insights or the Mobile / Desktop tabs on the domain report are enough. AI insights fit when the brief is “what should we change across this property first?” The distinction matters in client emails: one explains a spot check, the other briefs a template or third-party change that shows up across many URLs. Agencies usually need both over a quarter; they just should not confuse them on the same call.&lt;/p&gt;
&lt;h3 id=&quot;how-ai-insights-sit-next-to-the-domain-report-summary&quot;&gt;How AI insights sit next to the domain report Summary&lt;/h3&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/attention-free-score-domain-report-summary&quot;&gt;Attention-Free Score: How Domain Reports Show Which Pages Need Work&lt;/a&gt; remains the always-on layer. Summary is free with the report: attention-free percentage, dimensions needing attention, top pages, and merged opportunities. No language-model credit is spent to open it.&lt;/p&gt;
&lt;p&gt;AI insights are the optional layer on the same snapshot. Generate when you want natural-language prioritisation and a fix checklist grounded in recurring audits. Skip generate when Summary already answers the client call. Public share links show the insight body only after someone with access has generated a completed insight; visitors never see an empty AI box or a Generate button on the public URL.&lt;/p&gt;
&lt;p&gt;That split keeps lab triage honest. Deterministic Summary is the scoreboard. AI is the briefing note you write when the portfolio needs a narrative, not a replacement for budgets, alerts, or scheduled monitoring. For the broader monitoring loop, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/what-is-automated-web-performance-monitoring&quot;&gt;What Is Automated Web Performance Monitoring?&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/pagespeed-insights-vs-automated-monitoring-when-manual-checks-arent-enough&quot;&gt;PageSpeed Insights vs Automated Monitoring&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;where-to-generate-ai-insights-in-watcher&quot;&gt;Where to generate AI insights in Watcher&lt;/h3&gt;
&lt;p&gt;Generation starts from evidence that already exists. After scheduled or manual tests finish, a Manager or Admin creates a domain report from the site Reports tab. In the app, the report’s AI insights tab shows either an empty state with Generate AI insights, or the stored insight with Regenerate and Copy markdown. The same generate action is available from the site Reports list.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://cdn.apogeewatcher.com/blog-images/97-ai-insights-domain-report.webp&quot; alt=&quot;Domain report AI insights tab showing a site-level summary, a high-impact unused JavaScript priority fix with action steps, quick wins, Copy markdown, and tabs for Summary, AI insights, Mobile, Desktop, and tested pages&quot;&gt;&lt;/p&gt;
&lt;p&gt;Live example: &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/reports/domain/5ZBhXJ1yOwzrwumDHAItr2UC7drxYXq9sT0VI9TTIjdudPfQdrIBRMaAOt7qBIKI#ai&quot;&gt;apogeewatcher.com domain report AI insights&lt;/a&gt; — site-level summary, priority fixes, and quick wins on the public share URL.&lt;/p&gt;
&lt;p&gt;Each generate or regenerate uses one AI credit for the organisation’s current monthly period. Caps and remaining usage appear in the topbar Plan &amp;amp; usage panel next to sites, organisations, and tests. Step-by-step detail is in &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/domain-performance-reports&quot;&gt;Domain performance reports&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/plans-and-billing/understand-plan-limits&quot;&gt;Understand plan limits&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On the public domain report URL, recipients see the insight only when a completed one exists. That keeps prospect and client links tidy: you decide when synthesis is ready to share, then send the same token you already use for Summary. Until you generate, the public page stays a clean lab readout without an empty AI placeholder.&lt;/p&gt;
&lt;h3 id=&quot;ai-insights-quota-and-which-plans-include-them&quot;&gt;AI insights quota and which plans include them&lt;/h3&gt;
&lt;p&gt;Default paid tiers from Personal upward include AI insights. Free does not. Pricing and My Account show whether the feature is on before you promise synthesis in a retainer scope. Monthly AI credit limits sit beside test volume on purpose: synthesis is meant for site evaluations, not one model call per scheduled page run.&lt;/p&gt;
&lt;p&gt;When the meter is empty, Generate and Regenerate stay blocked until the period resets or the plan changes. Site-level evaluation is the default we ship; per-run AI deep dives remain a future path if customers ask for them. Portfolio roll-ups across many client sites are also later work. For weekly organisation PDFs and white-label branding already live, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;Weekly Organisation Reports and White-Label Branding Options Are Live&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;updated-site-view-tests-pages-discovery-and-reports-together&quot;&gt;Updated site view: tests, pages, discovery, and reports together&lt;/h3&gt;
&lt;p&gt;Alongside AI insights leaving beta, we refreshed the site view in the app so day-to-day monitoring work does not scatter across unrelated screens. From Setup → Sites, a property opens as one record: pages and discovery for the URL pool, test history for what already ran, statistics for recent lab movement, and Reports for domain-report generation and AI actions. Fewer switches between “find URLs,” “see what ran,” and “share what it means” means fewer stale snapshots.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://cdn.apogeewatcher.com/blog-images/97-updated-site-view.webp&quot; alt=&quot;Updated site view showing site details, a two-week performance chart, statistics for active pages and Attention-Free share, and a Site Pages table with Discover Pages plus tabs for Test results, Budgets, Alerts, and Reports&quot;&gt;&lt;/p&gt;
&lt;p&gt;Insights are only as good as the evidence behind them. Discovery and page lists decide which URLs enter the report pool. Scheduled tests fill that pool. Reports turn the results into a shareable Summary and, when you choose, an AI briefing. Keeping those steps on one site record lowers the chance that someone generates synthesis from an incomplete page set.&lt;/p&gt;
&lt;p&gt;Client-ready reporting habits still apply: budgets and schedules first, then shared links. &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;Client-Ready Core Web Vitals Report Outline&lt;/a&gt; remains useful when Summary plus an insight becomes a retainer narrative. The insight works as the ordered checklist inside that outline, not as a substitute for the scoreboard.&lt;/p&gt;
&lt;h3 id=&quot;what-ai-insights-do-not-claim&quot;&gt;What AI insights do not claim&lt;/h3&gt;
&lt;p&gt;We are explicit about scope so contracts stay clean:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Insights do not replace Lighthouse scores, audit lists, or Attention-Free gates.&lt;/li&gt;
&lt;li&gt;Insights do not guarantee rankings, Core Web Vitals field improvements, or pass/fail after a deploy. You still re-test and compare stored runs.&lt;/li&gt;
&lt;li&gt;Insights are not generated on every completed PageSpeed run by default.&lt;/li&gt;
&lt;li&gt;Public visitors cannot spend your AI credits.&lt;/li&gt;
&lt;li&gt;Free plans cannot generate insights.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The useful promise is narrower: faster time from multi-page red metrics to a concrete, evidence-backed checklist your team can implement and then verify with scheduled lab tests.&lt;/p&gt;
&lt;h3 id=&quot;faq&quot;&gt;FAQ&lt;/h3&gt;
&lt;h4 id=&quot;do-i-need-ai-insights-to-use-domain-reports-&quot;&gt;Do I need AI insights to use domain reports?&lt;/h4&gt;
&lt;p&gt;No. Summary, Mobile, Desktop, and Tested pages work without generating an insight. AI is optional synthesis on Personal and higher plans that include the feature.&lt;/p&gt;
&lt;h4 id=&quot;can-clients-generate-insights-from-a-public-share-link-&quot;&gt;Can clients generate insights from a public share link?&lt;/h4&gt;
&lt;p&gt;No. The public URL shows a completed insight when one exists. Generate and Regenerate stay in the signed-in app for roles that can manage reports, so visitors cannot spend your monthly AI credits.&lt;/p&gt;
&lt;h4 id=&quot;is-this-the-same-as-pasting-pagespeed-insights-into-chatgpt-&quot;&gt;Is this the same as pasting PageSpeed Insights into ChatGPT?&lt;/h4&gt;
&lt;p&gt;No. Watcher builds a bounded site summary from a multi-page domain-report snapshot already stored for your organisation. Single-URL chat tools explain one run; they do not see your scheduled portfolio context or recurring audits across templates.&lt;/p&gt;
&lt;h4 id=&quot;will-ai-insights-appear-on-weekly-organisation-pdfs-&quot;&gt;Will AI insights appear on weekly organisation PDFs?&lt;/h4&gt;
&lt;p&gt;Not in this release. Organisation weekly reports and white-label PDFs remain the portfolio pack described in the September ship note. Domain-report AI is site-level synthesis on the HTML report path first.&lt;/p&gt;
&lt;h4 id=&quot;what-should-i-do-after-i-apply-a-recommended-fix-&quot;&gt;What should I do after I apply a recommended fix?&lt;/h4&gt;
&lt;p&gt;Re-run tests on the affected pages, regenerate the domain report when you want a fresh snapshot, and compare Attention-Free and opportunity lists. Treat the insight as guidance before the fix, not as a certificate after deploy. Pass or fail still comes from the next stored lab runs, the same way budgets and alerts already work.&lt;/p&gt;
&lt;p&gt;If you want site-level guidance on top of the monitoring loop you already run, open a site with completed tests, generate a domain report, then use Generate AI insights when the plan includes the feature. A trial starts at &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/sign-up&quot;&gt;sign-up&lt;/a&gt;; a &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/check&quot;&gt;free domain check&lt;/a&gt; shows Summary without AI first. Changelog #14 at the end of October will cover the wider product window.&lt;/p&gt;
&lt;h3 id=&quot;references&quot;&gt;References&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/domain-performance-reports&quot;&gt;Domain performance reports&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/plans-and-billing/understand-plan-limits&quot;&gt;Understand plan limits&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/plans-and-billing/plan-features-by-tier&quot;&gt;Plan features by tier&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/attention-free-score-domain-report-summary&quot;&gt;Attention-Free Score: How Domain Reports Show Which Pages Need Work&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/what-is-automated-web-performance-monitoring&quot;&gt;What Is Automated Web Performance Monitoring?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/pagespeed-insights-vs-automated-monitoring-when-manual-checks-arent-enough&quot;&gt;PageSpeed Insights vs Automated Monitoring: When Manual Checks Aren't Enough&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;Weekly Organisation Reports and White-Label Branding Options Are Live&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;Client-Ready Core Web Vitals Report Outline&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://developers.google.com/speed/docs/insights/v5/get-started&quot;&gt;PageSpeed Insights API&lt;/a&gt; (Google for Developers)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://developer.chrome.com/docs/devtools/lighthouse&quot;&gt;Lighthouse in Chrome DevTools&lt;/a&gt; (Chrome for Developers)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Originally published on &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/site-level-guidance-ai-actionable-insights-leave-beta&quot;&gt;Apogee Watcher&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/32480/site-level-guidance-ai-actionable-insights-leave-beta</guid>
<pubDate>Mon, 26 Oct 2026 07:52:55 +0000</pubDate>
</item>
<item>
<title>TTFB Is Not Only the Server: The Unattributed Slice Agencies Should Name in Reports</title>
<link>https://coderlegion.com/30086/ttfb-is-not-only-the-server-the-unattributed-slice-agencies-should-name-in-reports</link>
<description>&lt;p&gt;Time to First Byte is often treated as a synonym for back-end time. In the browser it is wider: everything from the start of the navigation until the first byte of the final response arrives. Redirects, DNS, connection setup, TLS inside that connection, network latency, CDN and origin work, and browser overhead can all sit inside the same number. When agencies paste a high Waiting (TTFB) bar into a client slide and write “server response,” they may be describing only the part the waterfall labels clearly.&lt;/p&gt;
&lt;p&gt;Unattributed Navigation Overhead (UNO) is the residual after you subtract the phases Navigation Timing can name. Harry Roberts documented the metric and the agency reporting problem in &lt;a rel=&quot;nofollow&quot; href=&quot;https://csswizardry.com/2026/08/uno-is-underrated/&quot;&gt;UNO Is Underrated&lt;/a&gt;, building on Tim Vereecke’s framing: measure the whole journey to the first byte, subtract every attributed phase, and keep whatever is left. The leftover may be hard to pin on one owner. It is still time users paid for. Naming it stops missing milliseconds from being assigned to origin PHP by default.&lt;/p&gt;
&lt;p&gt;What follows is a how-to for agencies who already walk delivery-layer TTFB in &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/network-performance-dns-tls-http-cdn-cache-rules&quot;&gt;Network Performance for Web Teams: DNS, TLS, HTTP, CDN, and Cache Rules&lt;/a&gt;. When the attributed server phase is the real bottleneck after the residual is accounted for, hand off to &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/ttfb-wont-go-down-server-side-culprits-beyond-theme&quot;&gt;TTFB Won't Go Down? Server-Side Culprits Beyond the Theme&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;what-unattributed-navigation-overhead-uno-is&quot;&gt;What unattributed navigation overhead (UNO) is&lt;/h3&gt;
&lt;p&gt;UNO is not a browser-provided metric. It is a calculated remainder:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UNO = TTFB − redirect − DNS − connection − (request → responseStart)&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In Navigation Timing terms, TTFB for this purpose is &lt;code&gt;responseStart − startTime&lt;/code&gt; (or the nearest equivalent your RUM tool exposes). Subtract the visible redirect span, DNS lookup, full connection span (TCP plus TLS when the API folds them together), and the span from &lt;code&gt;requestStart&lt;/code&gt; to &lt;code&gt;responseStart&lt;/code&gt;. What remains, floored at zero, is UNO.&lt;/p&gt;
&lt;p&gt;That residual can include browser initialisation, delays while unloading the previous page, disk or cache access, resource contention, and timings hidden by cross-origin restrictions. It is &lt;strong&gt;not&lt;/strong&gt; another name for redirect time. Hidden cross-origin redirects are a common source of UNO, but treating every unexplained millisecond as “a tracking redirect” repeats the same attribution mistake with a different label.&lt;/p&gt;
&lt;p&gt;CrUX can tell you field TTFB is poor. It cannot decompose that time into phases, so it also cannot compute UNO. Without a Navigation Timing breakdown from real navigations (or a careful local reproduction), all of TTFB is effectively unattributed in the Google field dataset.&lt;/p&gt;
&lt;h3 id=&quot;navigation-timing-ttfb-breakdown-redirect-dns-connection-request&quot;&gt;Navigation Timing TTFB breakdown: redirect, DNS, connection, request&lt;/h3&gt;
&lt;p&gt;A useful client-facing breakdown starts with the named hops, then shows the residual. Keep the language plain enough for a non-engineer stakeholder, and precise enough that engineers can map it back to DevTools. If the slide only shows total Waiting, every remedy conversation defaults to hosting.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Phase &lt;/th&gt;&lt;th&gt;What it usually covers &lt;/th&gt;&lt;th&gt;Where teams over-blame&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Redirect &lt;/td&gt;&lt;td&gt;Visible same-origin (or opted-in) redirects before the final response &lt;/td&gt;&lt;td&gt;Ignoring hidden cross-origin hops that never appear in &lt;code&gt;redirectCount&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;DNS &lt;/td&gt;&lt;td&gt;Domain lookup for the final host &lt;/td&gt;&lt;td&gt;Blaming “DNS” when connection or residual dominates&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Connection &lt;/td&gt;&lt;td&gt;TCP + TLS setup for the final host &lt;/td&gt;&lt;td&gt;Calling all Waiting “TLS” when connect is short&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Request → first byte &lt;/td&gt;&lt;td&gt;Time from sending the request until &lt;code&gt;responseStart&lt;/code&gt; &lt;/td&gt;&lt;td&gt;Calling this alone “the server” when UNO is large&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;UNO &lt;/td&gt;&lt;td&gt;Everything in TTFB not in the rows above &lt;/td&gt;&lt;td&gt;Leaving it unnamed so it inherits the server label&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Lighthouse and PageSpeed Insights still surface high first-byte time under diagnostics such as Reduce initial server response time. That audit name is historically server-shaped. It does not prove that PHP, WordPress cron, or database load owns the whole bar. Pair the lab label with a Navigation Timing breakdown before you write the remediation paragraph. &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/pagespeed-insights-vs-automated-monitoring-when-manual-checks-arent-enough&quot;&gt;PageSpeed Insights versus automated monitoring&lt;/a&gt; explains why a single paste also misses hour-of-day and campaign-mix effects that change which phases dominate.&lt;/p&gt;
&lt;p&gt;For DNS, TLS, HTTP version, and CDN cache rules that actually move the attributed network phases, stay inside the &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/network-performance-dns-tls-http-cdn-cache-rules&quot;&gt;network performance guide&lt;/a&gt;. The focus here is the slice those guides do not name: the unattributed remainder.&lt;/p&gt;
&lt;h3 id=&quot;why-redirect-dns-and-connection-phases-still-leave-a-gap&quot;&gt;Why redirect, DNS, and connection phases still leave a gap&lt;/h3&gt;
&lt;p&gt;Navigation Timing often fails to add back up to TTFB. Gaps exist between timestamps. Some timings are deliberately hidden. The browser still includes that time in TTFB; it simply will not (or cannot) attribute it in the redirect, DNS, or connection fields.&lt;/p&gt;
&lt;p&gt;Cross-origin redirects are the clearest example. When a navigation includes a cross-origin hop, Navigation Timing has traditionally reported &lt;code&gt;redirectStart&lt;/code&gt;, &lt;code&gt;redirectEnd&lt;/code&gt;, and &lt;code&gt;redirectCount&lt;/code&gt; as zero. Overall TTFB still includes the hop. The redirect vanishes from the breakdown and lands in UNO. Common journeys include affiliate or ad tracking wrappers, URL shorteners, social outbound wrappers, and even &lt;code&gt;http://&lt;/code&gt; to &lt;code&gt;https://&lt;/code&gt; on the same hostname. A change of scheme is a change of origin. What looks like a harmless first-party canonicalisation can still hide redirect timing.&lt;/p&gt;
&lt;p&gt;Synthetic tests that open the final landing URL never walk that chain. CrUX folds the cost into TTFB. Agencies comparing a clean lab homepage to a paid-search landing path then argue past each other: one chart shows a short Waiting bar, the other shows field TTFB that “must be the server.” Segment by landing page, campaign, and referrer when UNO rises. Reproduce representative journeys in DevTools instead of assuming origin compute.&lt;/p&gt;
&lt;p&gt;Chrome has started improving opt-in visibility for some cross-origin redirect timing via &lt;code&gt;Timing-Allow-Origin&lt;/code&gt; on redirecting servers. Adoption across shorteners and campaign platforms will be uneven for a long time. Even with better visibility, UNO still matters: not every residual is a redirect, and not every redirect will opt in.&lt;/p&gt;
&lt;h3 id=&quot;how-to-calculate-uno-from-navigation-timing&quot;&gt;How to calculate UNO from Navigation Timing&lt;/h3&gt;
&lt;p&gt;On a page you control, open DevTools Console after a hard navigation and read the navigation entry. The shape matches Harry’s public snippet:&lt;/p&gt;
&lt;pre&gt;&lt;code class=&quot;language-javascript&quot;&gt;const navigation = performance.getEntriesByType('navigation')[0];
const span = (end, start) =&amp;gt; Math.max(0, end - start);

const uno = Math.max(0, Math.round(
  (navigation.responseStart - navigation.startTime) -
  span(navigation.redirectEnd, navigation.redirectStart) -
  span(navigation.domainLookupEnd, navigation.domainLookupStart) -
  span(navigation.connectEnd, navigation.connectStart) -
  span(navigation.responseStart, navigation.requestStart)
));
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Do not treat a single Console value as portfolio truth. Cache warmth, device, connection, and previous-page unload all move the residual. For client work, collect UNO as both a duration and an occurrence count in RUM (or in a small beacon you control), then segment. Chart it beside redirect, DNS, connection, attributed server waiting, total TTFB, and Largest Contentful Paint. When LCP is TTFB-sensitive, unexplained first-byte time is not academic; it delays paint. &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/quick-way-to-fix-lcp&quot;&gt;A Quick Way to Fix LCP: Four Changes That Cut Time to Paint&lt;/a&gt; still applies after you know whether the early wait is attributed server time or UNO.&lt;/p&gt;
&lt;p&gt;For a quick sanity check of hidden redirects, open a shortened URL that lands on a known host, then compare &lt;code&gt;redirectCount&lt;/code&gt; (often zero) with a non-zero UNO. Contrast that with a same-origin trailing-slash redirect that &lt;em&gt;does&lt;/em&gt; enumerate. The point is not the demo URL; it is that visible redirect count alone is a poor map of real campaign traffic.&lt;/p&gt;
&lt;h3 id=&quot;what-agencies-should-name-in-client-reports-when-ttfb-looks-server-only-&quot;&gt;What agencies should name in client reports when TTFB looks “server-only”&lt;/h3&gt;
&lt;p&gt;Client reports need a labelled residual. A practical slide or appendix row looks like this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Total TTFB&lt;/strong&gt; (lab on the money URL, plus field TTFB when CrUX exists).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Attributed phases&lt;/strong&gt; you can defend: redirect (visible), DNS, connection, request→first byte.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;UNO&lt;/strong&gt; as “unexplained navigation time inside TTFB,” with a one-line definition.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Next action by owner:&lt;/strong&gt; campaign/redirect chain, delivery (DNS/TLS/CDN), or origin application.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Write the sentence that prevents the wrong ticket. Prefer: “Field TTFB is elevated; Navigation Timing leaves X ms unattributed after redirect, DNS, connection, and request timing. We will reproduce campaign landings before we open a hosting upsizing ticket.” Avoid: “Server response is slow” when the only evidence is a total TTFB bar.&lt;/p&gt;
&lt;p&gt;Use &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/performance-budget-thresholds-template&quot;&gt;Performance Budget Thresholds Template&lt;/a&gt; so money URLs have explicit first-byte budgets, then annotate whether breaches are attributed server time or UNO-heavy. Schedule lab coverage on priority URLs with &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/how-to-schedule-pagespeed-monitoring-test-frequency-priority-portfolio&quot;&gt;PageSpeed monitoring test frequency and priority across a portfolio&lt;/a&gt; so you are not inventing the breakdown from a single Friday afternoon paste. Watcher’s multi-tenant schedules keep those lab baselines comparable week to week; they do not replace RUM for UNO segmentation, and you should say that plainly when the residual only appears on campaign landings.&lt;/p&gt;
&lt;h3 id=&quot;when-the-attributed-server-phase-is-the-real-bottleneck&quot;&gt;When the attributed server phase is the real bottleneck&lt;/h3&gt;
&lt;p&gt;Name UNO first. Then look at the request→responseStart span (and any RUM “server” or Waiting attribution your tool exposes after known network phases). If that attributed slice dominates, and DNS/connect/UNO are small, origin work is the honest story.&lt;/p&gt;
&lt;p&gt;That is when &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/ttfb-wont-go-down-server-side-culprits-beyond-theme&quot;&gt;TTFB Won't Go Down? Server-Side Culprits Beyond the Theme&lt;/a&gt; becomes the runbook: WP-Cron storms, cold PHP workers, missing object cache, database load, backup plugins at peak. Do not start there when UNO or hidden redirect chains explain most of the bar. Do not skip there when the residual is already named and still tiny beside a long attributed wait.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Pattern &lt;/th&gt;&lt;th&gt;Likely owner &lt;/th&gt;&lt;th&gt;First move&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;High UNO on campaign/referrer segments; lab direct URL fine &lt;/td&gt;&lt;td&gt;Redirect / landing path &lt;/td&gt;&lt;td&gt;Reproduce chain; talk to tracking/shortener owners&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;High DNS or connect; UNO modest &lt;/td&gt;&lt;td&gt;Delivery / network &lt;/td&gt;&lt;td&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/network-performance-dns-tls-http-cdn-cache-rules&quot;&gt;Network performance checklist&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;High request→first byte; UNO and connect small &lt;/td&gt;&lt;td&gt;Origin application &lt;/td&gt;&lt;td&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/ttfb-wont-go-down-server-side-culprits-beyond-theme&quot;&gt;Server-side TTFB checklist&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Everything elevated after a browser-major mix shift &lt;/td&gt;&lt;td&gt;Population / measurement &lt;/td&gt;&lt;td&gt;Annotate releases; do not only ship origin tickets&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;TTFB is not a Core Web Vital, but it still gates LCP because HTML must arrive before the largest content can paint. Keep that link explicit in reports so stakeholders do not treat first-byte work as vanity once LCP is the slide title. Naming UNO does not replace LCP fixes; it stops you spending the LCP budget on the wrong first-byte owner.&lt;/p&gt;
&lt;h3 id=&quot;why-crux-and-one-off-lab-runs-miss-the-unattributed-slice&quot;&gt;Why CrUX and one-off lab runs miss the unattributed slice&lt;/h3&gt;
&lt;p&gt;CrUX reports field TTFB without the Navigation Timing phases needed for UNO. Useful as a population signal; useless as a phase budget. One-off PageSpeed Insights or Lighthouse runs on the final URL skip affiliate and shortener chains, warm different caches, and label the wait with server-shaped language. Neither artefact is wrong for what it measures. Both are incomplete if your clients’ money arrives through wrapped links.&lt;/p&gt;
&lt;p&gt;Proper RUM (commercial, open-source, or homegrown) that retains navigation timestamps, page-view context, and dimensions is how UNO becomes actionable. You need duration and occurrence count, not only a p75. You need breakdowns by landing page, campaign, referrer, browser, device, and connection. Synthetic schedules still matter for regression detection on known URLs; they answer a different question. &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/when-to-use-synthetic-vs-real-user-monitoring-performance&quot;&gt;When to use synthetic versus real user monitoring&lt;/a&gt; is the pairing guide when a stakeholder asks which chart to trust.&lt;/p&gt;
&lt;h3 id=&quot;faq-1&quot;&gt;FAQ&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;What is unattributed navigation overhead?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It is the part of Time to First Byte left after subtracting the redirect, DNS, connection, and request-to-response phases exposed by Navigation Timing. It is a residual metric, not a single browser-reported timer. You calculate it so unexplained time has a label instead of inheriting the server narrative.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Is UNO the same as redirect time?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;No. Hidden cross-origin redirects often inflate UNO, but browser work, cache access, unload delays, and other gaps can sit there too. Do not rewrite “unattributed” as “redirects we have not counted yet” without evidence from reproduction and referrer or campaign data.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why are some redirects missing from Navigation Timing?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;For privacy and origin-boundary reasons, cross-origin navigation redirects have traditionally reported zero redirect timing and count even when TTFB includes them. Scheme changes such as HTTP to HTTPS count as cross-origin even on the same hostname. The hop still costs users; only the breakdown loses it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Can CrUX report UNO?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;No. CrUX exposes field TTFB without the phase timestamps required to calculate the residual. Use RUM or a Navigation Timing beacon on your own traffic if you need the split.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How should we talk about this in a client report?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Show total TTFB, the named phases, and a labelled UNO row. State the next owner (campaign path, delivery, or origin) instead of defaulting every elevated first-byte chart to “upgrade hosting.” One honest residual row prevents a week of origin tickets that never touch the real journey.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;When do we optimise the server instead?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When the attributed request→first-byte (or tool-equivalent server) phase dominates after UNO and network phases are small. Use the &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/ttfb-wont-go-down-server-side-culprits-beyond-theme&quot;&gt;server-side TTFB checklist&lt;/a&gt;. That hand-off is intentional: UNO naming first, origin work second.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;If your retainers still describe every Waiting bar as server time, add UNO to the next report cycle on two or three campaign-heavy URLs and compare it with a direct lab navigation. Keep scheduled lab baselines on those URLs while you wire RUM (or a small beacon) for the Navigation Timing breakdown clients never see in CrUX alone. &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/sign-up&quot;&gt;Start a free Apogee Watcher trial&lt;/a&gt; when you want those lab checks on a multi-tenant schedule without pasting PageSpeed Insights by hand.&lt;/p&gt;
&lt;h3 id=&quot;references-1&quot;&gt;References&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://csswizardry.com/2026/08/uno-is-underrated/&quot;&gt;Unattributed Navigation Overhead (UNO) Is Underrated&lt;/a&gt; (Harry Roberts / CSS Wizardry; metric coined by Tim Vereecke)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://csswizardry.com/2026/08/web-perf-wednesday-006-faster-browser-releases-change-your-rum-population/&quot;&gt;Web-Perf Wednesday 006 – Faster Browser Releases Change Your RUM Population&lt;/a&gt; (CSS Wizardry)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://www.w3.org/TR/navigation-timing-2/&quot;&gt;Navigation Timing Level 2&lt;/a&gt; (W3C)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://web.dev/articles/ttfb&quot;&gt;Time to First Byte (TTFB)&lt;/a&gt; (web.dev)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/network-performance-dns-tls-http-cdn-cache-rules&quot;&gt;Network Performance for Web Teams: DNS, TLS, HTTP, CDN, and Cache Rules&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/ttfb-wont-go-down-server-side-culprits-beyond-theme&quot;&gt;TTFB Won't Go Down? Server-Side Culprits Beyond the Theme&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/quick-way-to-fix-lcp&quot;&gt;A Quick Way to Fix LCP: Four Changes That Cut Time to Paint&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/pagespeed-insights-vs-automated-monitoring-when-manual-checks-arent-enough&quot;&gt;PageSpeed Insights versus automated monitoring&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/performance-budget-thresholds-template&quot;&gt;Performance Budget Thresholds Template&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/how-to-schedule-pagespeed-monitoring-test-frequency-priority-portfolio&quot;&gt;PageSpeed monitoring: schedule test frequency and priority across a portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/when-to-use-synthetic-vs-real-user-monitoring-performance&quot;&gt;When to use synthetic versus real user monitoring&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Originally published on &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/ttfb-not-only-server-unattributed-navigation-overhead&quot;&gt;Apogee Watcher&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/30086/ttfb-is-not-only-the-server-the-unattributed-slice-agencies-should-name-in-reports</guid>
<pubDate>Wed, 07 Oct 2026 07:01:26 +0000</pubDate>
</item>
<item>
<title>Weekly Organisation Reports and White-Label Branding Options Are Live</title>
<link>https://coderlegion.com/29599/weekly-organisation-reports-and-white-label-branding-options-are-live</link>
<description>&lt;p&gt;We have shipped the weekly organisation reports agencies keep asking for on retainers: a portfolio PDF built from scheduled PageSpeed Insights history, plus white-label branding options so the file can leave under your agency name instead of ours.&lt;/p&gt;
&lt;p&gt;Until now, teams could already schedule tests, set budgets, and share domain-level roll-ups. What was missing was a recurring organisation-level pack that arrives without rebuilding a deck every Sunday night. That pack is live. Branding for it is live too, on plans that include white-label reports. Monthly and custom period types remain reserved for later; we say that plainly below so contracts stay honest.&lt;/p&gt;
&lt;p&gt;If you need the full monthly retainer workflow (budgets, narrative, upsell), keep &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-cwv-reports-monthly-retainer-workflow&quot;&gt;From Scheduled Tests to White-Label CWV Reports: A Monthly Retainer Workflow&lt;/a&gt; beside this note. What follows is the product change: what Watcher generates, which branding fields you control, and how to turn the pack on. It is the ship note, not a remake of the five-step retainer guide.&lt;/p&gt;
&lt;h3 id=&quot;what-weekly-organisation-reports-include&quot;&gt;What weekly organisation reports include&lt;/h3&gt;
&lt;p&gt;Organisation reports are portfolio roll-ups for a workspace. They are not a single-URL share link, and they are not the public multi-page &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/attention-free-score-domain-report-summary&quot;&gt;domain report Summary&lt;/a&gt;. One organisation can cover many client sites; the weekly report aggregates completed lab tests across those sites for a Monday–Sunday period. That distinction matters in client emails: a domain report answers “which URLs on this host need work after a batch run?” An organisation weekly report answers “how did this portfolio move last week, and which sites should the account lead open first?”&lt;/p&gt;
&lt;p&gt;On a typical weekly row you will see:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Period&lt;/strong&gt; labelled by day range (for example &lt;code&gt;14-20/Sep/2026&lt;/code&gt;), with a &lt;code&gt;· preview&lt;/code&gt; marker when the week is still in progress.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Insight summary:&lt;/strong&gt; a short narrative built from the week’s movers (strongest drop, biggest gain, how many sites improved versus declined, alerts opened versus closed, and similar). It does not restate the KPI cards below it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;KPI cards:&lt;/strong&gt; average Lighthouse Performance, attention-free share of tests in the period, sites and tests covered, alerts, and API usage where relevant.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Site breakdown and movers:&lt;/strong&gt; which sites improved or regressed so account leads can open the right client first.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PDF download&lt;/strong&gt; when the organisation owner’s plan includes &lt;strong&gt;PDF reports&lt;/strong&gt; (typically Professional and above; confirm on &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/pricing&quot;&gt;Pricing&lt;/a&gt; and My Account).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Email to organisation admins&lt;/strong&gt; when the Sunday job finishes, with the PDF attached when PDF reports are on the plan.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&quot;https://cdn.apogeewatcher.com/blog-images/85C-reports-list-preview-weekly-v4.webp&quot; alt=&quot;Reports list showing Preview, a weekly type badge, period with preview marker, average performance, attention-free percentage, and Download&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://cdn.apogeewatcher.com/blog-images/85C-report-view-summary-white-label-v3.webp&quot; alt=&quot;Weekly report view with White-label On, insight summary, average performance and attention-free KPI cards, plus Download Report and Regenerate PDF&quot;&gt;&lt;/p&gt;
&lt;p&gt;The Sunday job runs at 08:00 in the app timezone for each active organisation that had completed lab tests in the prior week. You do not author the report body in the app; Watcher builds the row from stored test history. If a Preview already exists for that week, the final Sunday run finalises it rather than leaving a duplicate. Full steps are in &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/organisation-reports-and-pdf&quot;&gt;Organisation reports and PDF&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Scores on the row use the same lab language agencies already know from domain reports. Average performance is the mean Lighthouse Performance score over valid completed tests in the period. Attention-free percentage is the share of those tests that pass the evaluated Attention-Free gates (Performance and Core Web Vitals thresholds; accessibility, best practices, and SEO gates apply when those scores are present on the site test rows). Use those two numbers to skim the portfolio, then open movers to see which sites changed and why.&lt;/p&gt;
&lt;p&gt;Here is a public sample PDF for the same demo week (21–26 Sep 2026): &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/storage/organization-reports/markg_ecc-weekly-2026-09-21-to-2026-09-26.pdf&quot;&gt;markg weekly organisation report PDF&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://cdn.apogeewatcher.com/blog-images/85C-pdf-weekly-report.webp&quot; alt=&quot;Sample weekly organisation PDF with branded header, insight summary, KPI cards, site breakdown, and movers&quot;&gt;&lt;/p&gt;
&lt;h3 id=&quot;white-label-branding-options-for-agency-pdfs&quot;&gt;White-label branding options for agency PDFs&lt;/h3&gt;
&lt;p&gt;White-label packaging is a separate plan feature from basic PDF export. You can have PDF downloads without agency theming; white-label applies your logo, colour, and font when the plan includes it (typically Professional, Agency, and Enterprise; check My Account for the current flags). Confirm both &lt;strong&gt;PDF reports&lt;/strong&gt; and &lt;strong&gt;White-label reports&lt;/strong&gt; on My Account before you promise branded files in a client scope.&lt;/p&gt;
&lt;p&gt;When white-label is available, open &lt;strong&gt;Setup → Organisations&lt;/strong&gt;, edit the organisation, and set:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Field &lt;/th&gt;&lt;th&gt;What it controls&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Report logo&lt;/strong&gt; &lt;/td&gt;&lt;td&gt;Image at the top of the weekly PDF. If empty while white-label is on, Watcher uses the default Apogee Watcher report logo.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Primary colour&lt;/strong&gt; &lt;/td&gt;&lt;td&gt;Hex accent used in the PDF (for example &lt;code&gt;#ff6633&lt;/code&gt;).&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;strong&gt;Font family&lt;/strong&gt; &lt;/td&gt;&lt;td&gt;Choice from a curated DomPDF-safe list of Google Fonts that embed as TrueType.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;img src=&quot;https://cdn.apogeewatcher.com/blog-images/85C-org-report-branding-fields-v3.webp&quot; alt=&quot;Organisation report branding fields for report logo, primary colour, and font family&quot;&gt;&lt;/p&gt;
&lt;p&gt;On the report view, &lt;strong&gt;White-label&lt;/strong&gt; shows &lt;strong&gt;On&lt;/strong&gt; or &lt;strong&gt;Off&lt;/strong&gt;. New scheduled runs and &lt;strong&gt;Preview&lt;/strong&gt; runs pick up current branding when white-label is on. After you change logo, colour, or font on an existing weekly row, use &lt;strong&gt;Regenerate PDF&lt;/strong&gt; so the stored file matches the organisation settings. That regenerate step matters when you correct a logo the night before a client call: you do not need to wait for next Sunday.&lt;/p&gt;
&lt;p&gt;Step-by-step branding setup is in &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/white-label-reports&quot;&gt;White-label reports&lt;/a&gt;. For the broader case for branded packs, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-performance-reports-what-they-are-and-why-agencies-need-them&quot;&gt;White-Label Performance Reports: What They Are and Why Agencies Need Them&lt;/a&gt;. Contracts that promise a “fully self-serve white-label portal” still need a tier check first; the flags live on Pricing and My Account, not in a sales deck alone.&lt;/p&gt;
&lt;h3 id=&quot;how-to-preview-download-and-regenerate-a-weekly-pack&quot;&gt;How to preview, download, and regenerate a weekly pack&lt;/h3&gt;
&lt;p&gt;A practical first week with the new reports looks like this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Confirm schedules are running on the priority URLs for each site in the organisation.&lt;/li&gt;
&lt;li&gt;Set organisation branding if your plan includes white-label reports.&lt;/li&gt;
&lt;li&gt;Open &lt;strong&gt;Results → Reports&lt;/strong&gt; and use &lt;strong&gt;Preview&lt;/strong&gt; for a Monday→today look before Sunday. Preview does not send email.&lt;/li&gt;
&lt;li&gt;After Sunday (or after Preview), open the row, read the insight summary and site movers, then &lt;strong&gt;Download Report&lt;/strong&gt; when a PDF exists.&lt;/li&gt;
&lt;li&gt;If branding changed after the file was built, &lt;strong&gt;Regenerate PDF&lt;/strong&gt; and download again.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The Reports list puts &lt;strong&gt;Preview&lt;/strong&gt; above the table and shows &lt;strong&gt;Download&lt;/strong&gt; on rows that already have a PDF. The sample pack linked above is what that download looks like once generated.&lt;/p&gt;
&lt;p&gt;If you administer more than one organisation, Preview offers a dropdown of organisation names so you do not generate the wrong portfolio pack by habit. Quiet organisations with no completed lab tests in the period simply do not produce a weekly row; that is expected, not a silent failure of the scheduler. Run Preview once after branding is saved so you can see the logo and colour on a real PDF before Sunday mail.&lt;/p&gt;
&lt;p&gt;Download steps alone are covered in &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/download-organisation-reports&quot;&gt;Download organisation reports&lt;/a&gt;. Viewers and Managers can download the same finished files Admins can; only Admins edit branding and plan upgrades. When PDF reports are off for the plan, you may still see report rows in the list, but &lt;strong&gt;Download&lt;/strong&gt; appears only when a file exists.&lt;/p&gt;
&lt;h3 id=&quot;what-is-live-versus-still-reserved&quot;&gt;What is live versus still reserved&lt;/h3&gt;
&lt;p&gt;Honesty here matters more than a glossy cover. Use this table when you brief account leads or write client scopes. It matches the Feature Disclaimer we use elsewhere in Watcher content: say what is live, what is reserved, and what is still coming.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Capability &lt;/th&gt;&lt;th&gt;Status&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Weekly organisation report (Sunday schedule) &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Live&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Preview current week (Mon→today) &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Live&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;PDF download (&lt;code&gt;pdf_reports&lt;/code&gt;) &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Live&lt;/strong&gt; on plans that include it&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;White-label logo, colour, font (&lt;code&gt;white_label_reports&lt;/code&gt;) &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Live&lt;/strong&gt; on plans that include it&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Regenerate PDF after branding changes &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Live&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Monthly organisation report type &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Reserved&lt;/strong&gt; (not self-serve yet)&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Custom date-range organisation report type &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Reserved&lt;/strong&gt; (not self-serve yet)&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Slack and webhook alert delivery &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Coming soon&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Organisation-scoped Leads Management with RBAC for every agency seat &lt;/td&gt;&lt;td&gt;&lt;strong&gt;Coming soon&lt;/strong&gt; (prospecting today is largely an internal / sysadmin MVP)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Weekly PDFs are the automated evidence pack. A monthly retainer narrative still benefits from your account lead’s prose (executive summary, work completed, next-period plan) on top of the weekly numbers. That is intentional: the product removes last-minute history gathering and brand packaging; it does not invent a full monthly story editor yet.&lt;/p&gt;
&lt;h3 id=&quot;how-this-changes-the-monthly-retainer-pack&quot;&gt;How this changes the monthly retainer pack&lt;/h3&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-cwv-reports-monthly-retainer-workflow&quot;&gt;The retainer workflow post&lt;/a&gt; already argued that white-label without a schedule is still a branded last-minute pack. With weekly organisation reports live, Step 4 packaging is no longer “support-assisted branding and hope the deck is ready.” You can pull last week’s PDF (or four weekly PDFs) into the month-end review, keep logo and colour consistent across organisations without rebuilding Canva covers each time, and use Preview mid-week when a release week needs an early look before the Sunday mail. That is the practical change for teams who already sell a monthly performance report retainer.&lt;/p&gt;
&lt;p&gt;The client-facing monthly report can remain one narrative PDF or slide pack. Watcher’s job is the dated evidence and the branded weekly attachment. Pair the weekly file with the &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;client-ready Core Web Vitals report outline&lt;/a&gt; when you draft the retainer letter. Account leads still own the “work completed” and “next period plan” paragraphs; Watcher owns the dated scores behind those paragraphs.&lt;/p&gt;
&lt;h3 id=&quot;faq-2&quot;&gt;FAQ&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Are white label organisation reports the same as domain reports?&lt;/strong&gt;&lt;br&gt;
No. Domain reports roll up many URLs on one hostname for a shareable triage page (including attention-free score on Summary). Organisation weekly reports roll up sites inside a workspace for a period, with PDF and optional white-label branding.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Can we send an agency branded PageSpeed PDF today?&lt;/strong&gt;&lt;br&gt;
Yes, when your plan includes PDF reports and white-label reports. Set logo, colour, and font on the organisation, confirm White-label shows On, then download or regenerate the weekly PDF. Pricing and My Account show the flags before you promise a fully branded portal in a contract.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Is there a hands-off monthly organisation report yet?&lt;/strong&gt;&lt;br&gt;
Not as a self-serve monthly type. Weekly automation is live. Monthly and custom period badges are reserved for later retainer and ad-hoc packs. Until those ship, build the monthly narrative from weekly evidence plus your own outline.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Do weekly organisation reports replace Search Console?&lt;/strong&gt;&lt;br&gt;
No. Search Console remains the field and indexing source for many SEO conversations. Organisation reports organise lab-oriented PageSpeed Insights history across the portfolio. Use both layers side by side.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Who receives the Sunday email?&lt;/strong&gt;&lt;br&gt;
Organisation admins. The PDF attaches when the plan includes PDF reports.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What fonts can we use on white-label PDFs?&lt;/strong&gt;&lt;br&gt;
A curated DomPDF-safe allowlist of Google Fonts that embed as TrueType (Inter, Roboto, Open Sans, Lato, Montserrat, and similar). Pick the font on the organisation branding form; invalid or missing fonts fall back to a safe default. Full steps are in the white-label docs.&lt;/p&gt;
&lt;h3 id=&quot;try-it-on-one-organisation-first&quot;&gt;Try it on one organisation first&lt;/h3&gt;
&lt;p&gt;Pick one retainer client, confirm schedules and budgets, set branding if white-label is on the plan, run &lt;strong&gt;Preview&lt;/strong&gt;, then let the Sunday job finish once. Compare the PDF to last month’s manual pack before you roll the workflow across the portfolio. That single-organisation pilot usually shows logo sizing issues, colour contrast on printed pages, and whether the insight summary matches how your team already talks to the client.&lt;/p&gt;
&lt;p&gt;When you are ready to expand, start from &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/sign-up&quot;&gt;sign-up&lt;/a&gt; or review &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/features&quot;&gt;features&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/pricing&quot;&gt;pricing&lt;/a&gt;, then follow &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/organisation-reports-and-pdf&quot;&gt;Organisation reports and PDF&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/white-label-reports&quot;&gt;White-label reports&lt;/a&gt; for the click path in the app.&lt;/p&gt;
&lt;h3 id=&quot;references-2&quot;&gt;References&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/storage/organization-reports/markg_ecc-weekly-2026-09-21-to-2026-09-26.pdf&quot;&gt;Sample weekly organisation report PDF (21–26 Sep 2026)&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/organisation-reports-and-pdf&quot;&gt;Organisation reports and PDF&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/white-label-reports&quot;&gt;White-label reports&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/download-organisation-reports&quot;&gt;Download organisation reports&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-cwv-reports-monthly-retainer-workflow&quot;&gt;From Scheduled Tests to White-Label CWV Reports: A Monthly Retainer Workflow&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-performance-reports-what-they-are-and-why-agencies-need-them&quot;&gt;White-Label Performance Reports: What They Are and Why Agencies Need Them&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;Client-Ready Core Web Vitals Report Outline&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/attention-free-score-domain-report-summary&quot;&gt;Attention-Free Score: How Domain Reports Show Which Pages Need Work&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://developers.google.com/speed/docs/insights/v5/about&quot;&gt;About PageSpeed Insights&lt;/a&gt; (Google)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://developers.google.com/search/docs/appearance/core-web-vitals&quot;&gt;Understanding Core Web Vitals and Google search results&lt;/a&gt; (Google Search Central)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Originally published on &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;Apogee Watcher&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/29599/weekly-organisation-reports-and-white-label-branding-options-are-live</guid>
<pubDate>Sat, 03 Oct 2026 06:58:48 +0000</pubDate>
</item>
<item>
<title>From Scheduled Tests to White-Label CWV Reports: A Monthly Retainer Workflow</title>
<link>https://coderlegion.com/29010/from-scheduled-tests-to-white-label-cwv-reports-a-monthly-retainer-workflow</link>
<description>&lt;p&gt;Agencies sell monthly performance retainers every week. Too many of those months still end the same way: a last-minute PageSpeed Insights run, a folder of screenshots, and a PDF that still shows someone else’s brand chrome. Clients pay for monitoring, yet what they receive is a scramble that is hard to renew and harder to upsell.&lt;/p&gt;
&lt;p&gt;White-label Core Web Vitals reports only work when scheduled evidence is already in place. PageSpeed Insights (or equivalent lab) runs collect the history; performance budgets decide what is green or red; a short narrative turns that into action; a branded PDF or share link puts it under your agency name. The retainer conversation then rests on dates, URLs, and agreed thresholds, not on whoever had time to click “Analyse” the night before the call.&lt;/p&gt;
&lt;p&gt;What follows is that monthly operating schedule end to end. Steps 1–3 and 5 are &lt;strong&gt;agency workflow&lt;/strong&gt;: they apply whether you monitor in spreadsheets, Lighthouse CI, another portfolio tool, or Apogee Watcher. Step 4 then separates &lt;strong&gt;how any agency can brand and send the report&lt;/strong&gt; from &lt;strong&gt;which Watcher report features are live today&lt;/strong&gt; (weekly organisation PDFs and white-label branding), including what is still reserved. For the broader case for branded reports, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-performance-reports-what-they-are-and-why-agencies-need-them&quot;&gt;White-Label Performance Reports&lt;/a&gt;. For the Watcher ship note alone, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;Weekly Organisation Reports and White-Label Branding Options Are Live&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;why-the-monthly-cwv-report-usually-fails&quot;&gt;Why the monthly CWV report usually fails&lt;/h3&gt;
&lt;p&gt;Most agencies already “report on performance.” That month of reporting still fails for the same reasons:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Evidence is ad hoc.&lt;/strong&gt; Someone runs PageSpeed Insights once, pastes screenshots, and hopes the numbers still match next week.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lab and field clocks mix.&lt;/strong&gt; A Lighthouse score and a CrUX window get treated as the same story, so the client gets conflicting answers.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;There is no shared budget language.&lt;/strong&gt; Without thresholds the team agreed in advance, every red number becomes a debate about taste.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Branding is last-minute.&lt;/strong&gt; The PDF still shows a monitoring vendor’s chrome, or the deck is rebuilt in Canva the night before the call.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The retainer is vague.&lt;/strong&gt; The client pays for “monitoring” without a calendar of what arrives each month and what triggers extra work.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;White-label reporting does not fix that by itself. White-label without a schedule is still a branded scramble. The workflow below fixes the scramble first (any stack), then Step 4 states Apogee Watcher’s report features honestly: what is live today (weekly organisation reports and branding options) versus what is still reserved or coming soon.&lt;/p&gt;
&lt;h3 id=&quot;step-1-scheduled-pagespeed-tests-as-the-evidence-base&quot;&gt;Step 1: Scheduled PageSpeed tests as the evidence base&lt;/h3&gt;
&lt;p&gt;A durable monthly report usually starts with a locked measurement rhythm, before anyone drafts client prose. That rhythm is stack-agnostic: you can run it from PageSpeed Insights by hand on a calendar, from CI, or from a portfolio monitor.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Which URLs?&lt;/strong&gt; Money paths first (home, pricing, checkout, key landing pages) tend to repay the work; homepage-only vanity rarely does.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How often?&lt;/strong&gt; Frequency that matches change risk works better than a fixed habit: weekly or denser for active releases; lighter for stable brochure sites. &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/how-to-schedule-pagespeed-monitoring-test-frequency-priority-portfolio&quot;&gt;PageSpeed Monitoring: How to Schedule Test Frequency and Priority Across Your Portfolio&lt;/a&gt; covers priority versus frequency trade-offs.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Which strategies?&lt;/strong&gt; Mobile and desktop both matter when the client’s traffic mix needs both; a single strategy rarely supports a full story.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Where does history live?&lt;/strong&gt; One multi-tenant dashboard per portfolio usually beats a folder of one-off PageSpeed Insights tabs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Scheduled tests close the “we checked once” loophole. When a client asks why LCP moved, a date range and a URL list answer more clearly than a memory of last month’s workshop. &lt;strong&gt;In Apogee Watcher&lt;/strong&gt;, that layer is automated discovery, scheduled PageSpeed Insights runs, budgets, and alerts across organisations and sites. Watcher layers onto Search Console and any real-user monitoring already in use, rather than forcing a rip-and-replace of tools that answer different questions. For how agencies combine DIY, portfolio monitors, and real-user monitoring, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/agency-pagespeed-stacks-2026&quot;&gt;3 Agency PageSpeed Stacks for 2026&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&quot;step-2-performance-budgets-before-the-monthly-story&quot;&gt;Step 2: Performance budgets before the monthly story&lt;/h3&gt;
&lt;p&gt;Budgets turn numbers into decisions. Without them, every report becomes a tour of charts. With them, the monthly report answers four questions quickly:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;What stayed inside budget?&lt;/li&gt;
&lt;li&gt;What breached, on which URLs, and since when?&lt;/li&gt;
&lt;li&gt;Was the breach lab-only, field-only, or both?&lt;/li&gt;
&lt;li&gt;What fits this month (fix, watch, or escalate)?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Budgets that stick are usually agreed with the client once, in writing, in the same LCP / INP / CLS (and supporting metrics) language the report will reuse every month. A shared &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/performance-budget-thresholds-template&quot;&gt;performance budget thresholds template&lt;/a&gt; keeps that language consistent across accounts so account leads are not inventing new bands every quarter. When a release week is hot, those budgets also show when an extra mid-cycle note is worth sending instead of waiting for the retainer report.&lt;/p&gt;
&lt;p&gt;For the document shape of the report itself, &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;Client-Ready Core Web Vitals Report Outline&lt;/a&gt; sits beside this workflow well. The outline is the document shape, and budgets are the pass/fail rules inside it. Domain-level summaries help account leads scan a portfolio without opening every page, and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/attention-free-score-domain-report-summary&quot;&gt;Attention-Free Score&lt;/a&gt; explains how domain reports show which pages need work without forcing a full deep-dive every time.&lt;/p&gt;
&lt;h3 id=&quot;step-3-the-monthly-narrative-not-a-metric-dump-&quot;&gt;Step 3: The monthly narrative (not a metric dump)&lt;/h3&gt;
&lt;p&gt;A useful monthly white-label CWV report is short on decoration and long on decisions. The reports that land with non-engineers are usually a client-ready PageSpeed PDF (or HTML share) readable in about ten minutes, with a shape like this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;One-paragraph executive summary&lt;/strong&gt; : overall status versus budgets; biggest win; biggest risk.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Trend versus last period&lt;/strong&gt; : same URLs, same strategies, same clocks (lab versus field labelled).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Top issues with owners&lt;/strong&gt; : three items maximum for a standard retainer month.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Work completed&lt;/strong&gt; : what shipped or was verified since last report.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Next period plan&lt;/strong&gt; : what the team will watch, fix, or quote separately.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Appendix&lt;/strong&gt; : raw tables or deep links for technical stakeholders.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Concrete wording (“mobile LCP on &lt;code&gt;/checkout&lt;/code&gt; breached 2.5 s for seven days”) lands better than motivational lines (“we remain committed to excellence”). Clients renew when the report reduces surprise, not when it flatters. That is also where sell-the-service language from &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/how-to-sell-performance-monitoring-services-to-your-clients&quot;&gt;How to Sell Performance Monitoring Services to Your Clients&lt;/a&gt; becomes operational: the retainer is already sold, and the monthly narrative is how the promise stays visible.&lt;/p&gt;
&lt;p&gt;A concrete month might look like this: executive summary notes mobile LCP on checkout outside budget for nine days after a tag launch; trend table separates lab averages from CrUX categories; top issues list the tag owner, a hero image ticket, and a watch-only CLS note; next period plans a denser schedule on checkout until the breach clears. That report is ready to brand. It does not need fifty Lighthouse screenshots in the main section.&lt;/p&gt;
&lt;h3 id=&quot;step-4-branded-pdf-or-share-link&quot;&gt;Step 4: Branded PDF or share link&lt;/h3&gt;
&lt;p&gt;How you brand and send the report is where agencies over-promise. Split the question in two: &lt;strong&gt;formats any agency can use&lt;/strong&gt; for a branded monthly send, and &lt;strong&gt;which Apogee Watcher features generate&lt;/strong&gt; a branded PDF without rebuilding the deck by hand. For the Watcher ship note on weekly organisation reports and branding fields, see &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;Weekly Organisation Reports and White-Label Branding Options Are Live&lt;/a&gt;.&lt;/p&gt;
&lt;h4 id=&quot;how-any-agency-can-brand-and-send-the-report&quot;&gt;How any agency can brand and send the report&lt;/h4&gt;
&lt;p&gt;Agencies still choose delivery format for the &lt;strong&gt;monthly&lt;/strong&gt; client report:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Delivery                       &lt;/th&gt;&lt;th&gt;When it fits                             &lt;/th&gt;&lt;th&gt;Notes&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Branded PDF or slide deck      &lt;/td&gt;&lt;td&gt;Formal month-end retainer report         &lt;/td&gt;&lt;td&gt;Your narrative (Step 3) under agency logo; evidence may come from any monitor&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Time-limited share link        &lt;/td&gt;&lt;td&gt;Async review before the call             &lt;/td&gt;&lt;td&gt;Useful for lead and domain report styles; expiry expectations belong in the send note&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Live dashboard walkthrough     &lt;/td&gt;&lt;td&gt;Technical stakeholders                   &lt;/td&gt;&lt;td&gt;Viewer-style access so clients look, not edit&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Outline + screenshots (manual) &lt;/td&gt;&lt;td&gt;Early retainers while automation is thin &lt;/td&gt;&lt;td&gt;Scheduled evidence still matters; agency decks can carry brand&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;That table is product-agnostic. The monthly letter and review call remain yours.&lt;/p&gt;
&lt;h4 id=&quot;which-apogee-watcher-report-features-are-live-today&quot;&gt;Which Apogee Watcher report features are live today&lt;/h4&gt;
&lt;p&gt;On Watcher, organisation reports and white-label PDF branding are product features (plan-gated), not a Canva rebuild:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Available today:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Scheduled tests, performance budgets, email alerts, automated page discovery, multi-tenant dashboards, and team roles (Admin / Manager / Viewer).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Weekly organisation reports&lt;/strong&gt; — Sunday schedule for the prior Mon–Sun week, &lt;strong&gt;Preview&lt;/strong&gt; for Monday→today, insight summary, site movers, and email to organisation admins (&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/organisation-reports-and-pdf&quot;&gt;Organisation reports and PDF&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;PDF download on plans that include PDF reports (typically Professional and above; &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/pricing&quot;&gt;Pricing&lt;/a&gt; and My Account show the current tier flags).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;White-label branding options&lt;/strong&gt; on plans that include white-label reports: organisation logo, primary colour, and a curated font allowlist; White-label On/Off on the report view; &lt;strong&gt;Regenerate PDF&lt;/strong&gt; after branding changes (&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/white-label-reports&quot;&gt;White-label reports&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Coming soon:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Monthly&lt;/strong&gt; and &lt;strong&gt;custom&lt;/strong&gt; organisation report period types.&lt;/li&gt;
&lt;li&gt;Slack and webhook alert delivery.&lt;/li&gt;
&lt;li&gt;Organisation-scoped Leads Management with RBAC for every agency seat (prospecting today is largely an internal / sysadmin MVP; not every tenant role can run leads in-app yet).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;How the two layers meet on a Watcher retainer:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Delivery                        &lt;/th&gt;&lt;th&gt;When it fits                     &lt;/th&gt;&lt;th&gt;Watcher-shaped notes&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Weekly branded PDF download     &lt;/td&gt;&lt;td&gt;Numbers for the retainer week    &lt;/td&gt;&lt;td&gt;Organisation weekly PDF + white-label on Professional+ when flags are on&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Monthly narrative + weekly PDFs &lt;/td&gt;&lt;td&gt;Formal month-end retainer report &lt;/td&gt;&lt;td&gt;Your outline (generic Step 3) plus one or more weekly org PDFs; monthly type not self-serve yet&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/white-label-reports&quot;&gt;White-label reports docs&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/organisation-reports-and-pdf&quot;&gt;organisation reports docs&lt;/a&gt; are the ops brief for the Watcher column. Weekly automation with agency branding is live in Watcher; a hands-off monthly organisation report type is still reserved. White-label PageSpeed reports still sit on top of scheduled evidence; they are not a substitute for Search Console field data.&lt;/p&gt;
&lt;h3 id=&quot;step-5-retainer-upsell-and-optional-prospecting-&quot;&gt;Step 5: Retainer upsell (and optional prospecting)&lt;/h3&gt;
&lt;p&gt;A monthly report that only restates scores rarely expands the retainer. Narratives that open commercial paths usually fall into three patterns (again, stack-agnostic):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Stabilisation hours&lt;/strong&gt; : budget breaches with a clear fix list become a scoped sprint, not an awkward “we noticed something.”&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Coverage expansion&lt;/strong&gt; : more URLs, denser schedules, or a second market or language when discovery shows gaps.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New logos&lt;/strong&gt; : the same scheduled evidence supports prospecting: a prospect URL analysis, a one-page report, then qualify and outreach. See &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/from-monitoring-to-pipeline-why-pagespeed-data-works-for-agency-prospecting&quot;&gt;From Monitoring to Pipeline&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/pagespeed-prospecting-workflow-analyze-report-qualify-reach-out&quot;&gt;The PageSpeed Prospecting Workflow&lt;/a&gt;. On Watcher, Feature Disclaimer honesty still applies: org-scoped leads RBAC is coming; every seat is not a full CRM today.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The upsell works when the client already trusts the monthly clock. That trust comes from scheduled tests and budgets, not from a prettier cover page alone. A monthly performance report retainer priced on delivery cadence (report plus review call) is usually easier to renew than a vague “we watch your speed” line item with no report.&lt;/p&gt;
&lt;h3 id=&quot;a-one-month-operating-calendar&quot;&gt;A one-month operating calendar&lt;/h3&gt;
&lt;p&gt;A workable default for a standard retainer client looks like this. Ops columns are generic; the Watcher column is optional if that is your monitor:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;&lt;th&gt;Week   &lt;/th&gt;&lt;th&gt;Ops (any stack)                                        &lt;/th&gt;&lt;th&gt;If you use Watcher                                               &lt;/th&gt;&lt;th&gt;Client-facing&lt;/th&gt;&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;Week 1 &lt;/td&gt;&lt;td&gt;Confirm URL list and budgets; verify schedules running &lt;/td&gt;&lt;td&gt;Confirm org schedules and branding if white-label is on          &lt;/td&gt;&lt;td&gt;Kick-off note: what we measure and when the report arrives&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Week 2 &lt;/td&gt;&lt;td&gt;Triage alerts; fix or ticket critical breaches         &lt;/td&gt;&lt;td&gt;Use alert digests and site movers mid-week                       &lt;/td&gt;&lt;td&gt;Optional mid-cycle note only if budgets demand it&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Week 3 &lt;/td&gt;&lt;td&gt;Draft narrative from trends; pull PDF / share link     &lt;/td&gt;&lt;td&gt;Pull weekly org PDF(s) or Preview; keep Step 3 narrative yours   &lt;/td&gt;&lt;td&gt;Internal review with account lead&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Week 4 &lt;/td&gt;&lt;td&gt;Send branded report; book 20–30 minute review          &lt;/td&gt;&lt;td&gt;Attach weekly PDF(s) under white-label when the plan includes it &lt;/td&gt;&lt;td&gt;Upsell or next-month plan in writing&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Release-heavy clients often need denser mid-cycle notes. The calendar is the product. White-label branding is how that calendar looks when it leaves your building.&lt;/p&gt;
&lt;h3 id=&quot;faq-3&quot;&gt;FAQ&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Is this a generic agency workflow or an Apogee Watcher guide?&lt;/strong&gt;&lt;br&gt;
Both, on purpose. Steps 1–3, Step 5, and the calendar’s left columns describe a monthly white-label CWV retainer any agency can run. Step 4’s Watcher subsection, the Watcher calendar column, and the branded-PDF FAQ answer what Watcher generates today (weekly organisation reports and branding) versus what is still reserved.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What belongs in white-label Core Web Vitals reports each month?&lt;/strong&gt;&lt;br&gt;
Status versus budgets, labelled lab versus field trends, top issues with owners, work completed, and next-period plan. Raw Lighthouse dumps belong in an appendix, not in the executive story. The &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;client-ready outline&lt;/a&gt; is a reliable skeleton and does not depend on a specific vendor.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How is a monthly performance report retainer different from a one-off audit?&lt;/strong&gt;&lt;br&gt;
A retainer assumes continuous scheduled evidence and a recurring narrative. A one-off audit is a point-in-time baseline. Retainers without schedules tend to recreate the screenshot problem every month.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Can we send a client-ready PageSpeed PDF under our brand in Apogee Watcher today?&lt;/strong&gt;&lt;br&gt;
Yes. On Watcher plans with PDF and white-label features (typically Professional+), set logo, colour, and font on the organisation, then download the weekly organisation PDF (or regenerate after branding changes). A self-serve monthly organisation report type is still reserved; most retainers pair weekly PDFs with a short month-end narrative you write. Pricing and My Account show the current flags before contracts. Agencies not on Watcher still use the branded delivery options table in Step 4.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Do white-label PageSpeed reports replace Search Console?&lt;/strong&gt;&lt;br&gt;
No. Search Console remains the field and indexing source of truth for many SEO conversations. Watcher (and other lab monitors) organise PageSpeed Insights-style history across the portfolio. Both layers usually sit side by side.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Should every retainer include prospecting reports?&lt;/strong&gt;&lt;br&gt;
Only when prospecting is in scope. Monitoring retainers and pipeline work share scheduled evidence but different commercial promises. On Watcher, leads RBAC expectations stay accurate until org-scoped access ships.&lt;/p&gt;
&lt;h3 id=&quot;where-the-next-retainer-cycle-usually-starts&quot;&gt;Where the next retainer cycle usually starts&lt;/h3&gt;
&lt;p&gt;Agencies that harden this workflow often pick one client first, lock URLs and budgets early in the week, and let schedules run before anyone drafts prose. The narrative then comes from trends, not from a fresh panic test, and the branded PDF or share link matches what your tools (and plan) actually support. The review lands on the calendar before month end.&lt;/p&gt;
&lt;p&gt;When that scheduled evidence needs to span many organisations without per-site tool sprawl, a useful next step is to &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/sign-up&quot;&gt;start a Watcher trial&lt;/a&gt; or review &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/features&quot;&gt;features&lt;/a&gt; and &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/pricing&quot;&gt;pricing&lt;/a&gt;, pair this workflow with the &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-performance-reports-what-they-are-and-why-agencies-need-them&quot;&gt;white-label overview&lt;/a&gt;, and use the &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;weekly organisation reports ship note&lt;/a&gt; when briefing account leads on what is live versus reserved.&lt;/p&gt;
&lt;h3 id=&quot;references-3&quot;&gt;References&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/weekly-organisation-reports-white-label-branding-live&quot;&gt;Weekly Organisation Reports and White-Label Branding Options Are Live&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/organisation-reports-and-pdf&quot;&gt;Organisation reports and PDF&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-performance-reports-what-they-are-and-why-agencies-need-them&quot;&gt;White-Label Performance Reports: What They Are and Why Agencies Need Them&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/client-ready-core-web-vitals-report-outline&quot;&gt;Client-Ready Core Web Vitals Report Outline&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/how-to-sell-performance-monitoring-services-to-your-clients&quot;&gt;How to Sell Performance Monitoring Services to Your Clients&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/from-monitoring-to-pipeline-why-pagespeed-data-works-for-agency-prospecting&quot;&gt;From Monitoring to Pipeline: Why PageSpeed Data Works for Agency Prospecting&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/pagespeed-prospecting-workflow-analyze-report-qualify-reach-out&quot;&gt;The PageSpeed Prospecting Workflow: Analyze, Report, Qualify, and Reach Out&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/attention-free-score-domain-report-summary&quot;&gt;Attention-Free Score: How Domain Reports Show Which Pages Need Work&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/how-to-schedule-pagespeed-monitoring-test-frequency-priority-portfolio&quot;&gt;PageSpeed Monitoring: How to Schedule Test Frequency and Priority Across Your Portfolio&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/performance-budget-thresholds-template&quot;&gt;Performance Budget Thresholds Template&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/agency-pagespeed-stacks-2026&quot;&gt;3 Agency PageSpeed Stacks for 2026&lt;/a&gt; (Apogee Watcher)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/docs/reports-and-sharing/white-label-reports&quot;&gt;White-label reports&lt;/a&gt; (Apogee Watcher docs)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://developers.google.com/search/docs/appearance/core-web-vitals&quot;&gt;Understanding Core Web Vitals and Google search results&lt;/a&gt; (Google Search Central)&lt;/li&gt;
&lt;li&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://developers.google.com/speed/docs/insights/v5/about&quot;&gt;About PageSpeed Insights&lt;/a&gt; (Google)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Originally published on &lt;a rel=&quot;nofollow&quot; href=&quot;https://apogeewatcher.com/blog/white-label-cwv-reports-monthly-retainer-workflow&quot;&gt;Apogee Watcher&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
<category>Articles</category>
<guid isPermaLink="true">https://coderlegion.com/29010/from-scheduled-tests-to-white-label-cwv-reports-a-monthly-retainer-workflow</guid>
<pubDate>Tue, 29 Sep 2026 07:40:35 +0000</pubDate>
</item>
</channel>
</rss>