Docs
Sharing & delivering reports
Live links, PDF export, scheduled email, white-label, and delivery tracking — every way a report reaches a client.
Live shareable links
A live link gives a client an always-current view of their report that reflects the latest daily sync. It's ideal for stakeholders who like to check in between formal updates — they see today's numbers, not a snapshot from when you last hit send. Links are access-controlled, so only intended recipients can open them, and the same underlying report powers the link, the PDF and the scheduled email, so the three never diverge. Whoever opens the link can switch it between light and dark with the toggle in the top bar (their choice is remembered on their device); a PDF export always prints in light for readability regardless of the toggle.
Because the link is live, you don't have to re-share it each month; the URL stays the same and the data behind it keeps refreshing.
Moving a report to Deleted switches its links off straight away: whoever opens one sees "This link is not available", the same as for a link you removed, and neither the report's figures nor a PDF can be fetched through it. Restore the report from Deleted and the same links work again. Nothing about them changes, so there is nothing to send again.
Live dashboard or fixed report
Every share link is one of two kinds, and you pick it under Share as in the Share dialog. A Live dashboard lets your client choose the date range and the comparison period themselves, so they can look at last week, last quarter or last year without asking you. A Fixed report is locked to the report's own period and comparison, the way a PDF is. The client sees the period as plain text, and the lock is enforced on our side too: changing the address in the browser or requesting a PDF for another range still returns the report's own period. If the report uses a rolling period such as "Last 30 days", a fixed report rolls with it, the same way a scheduled report does.
The AI summary is written once, in the app, for one period, and a shared link only ever shows that saved text. It never generates anything for the person viewing it, so opening a link costs nothing and every viewer reads the same words. Each summary remembers what it was written from: the dates of its period and the figures it read. On a live dashboard, as long as the client looks at that period they see the full summary; when they switch to another range it folds down to one line saying which period it describes, so a summary never sits under numbers it wasn't written about. The same happens when time moves on: a "last month" summary written in September folds down in October, because last month is then September. A rolling period that has only moved on (last 7 days, read the next day, still shares most of its days) keeps the text, under a line giving the day it was written and the period it covers. When the figures of the same period have changed since the summary was written (Google Ads crediting late conversions, say), the summary stays, under a line giving the day it was written and saying that the figures have been updated since; the same when the report now compares with another period. Small movements don't show a reader anything: a figure has to move by at least 3 % (conversions and other counts by at least one, too), so late-arriving data that nudges a total by a fraction does not leave a note on a report for weeks. In the app you see the notes with a prompt to regenerate, and a quieter hint when figures have moved less than that. Summaries written before October 2026 don't record their figures; they fold down only when they are certainly from an earlier period.
Present mode follows the same choice. Presenting a fixed report hides every control apart from Exit. Presenting a live dashboard keeps the date range and comparison pickers, because "what about last quarter?" is a question you will get in the meeting. In both, the summary can't be edited or regenerated, the edit and Ask buttons are hidden, and a red laser dot follows your pointer.
PDF export
For clients who prefer an attachment they can file or forward, export a pixel-perfect, white-labelled PDF from the report header on demand. The PDF renders from the same report as the live link, so it carries the same widgets, numbers and AI summary — just frozen at the moment of export. You can also have a PDF attached automatically to a scheduled delivery, so the client gets a document in their inbox without anyone exporting it by hand.
Scheduling delivery
Open a report and click Schedule to put it on autopilot. Choose a cadence — weekly, monthly, or a custom interval — set the send time (in your workspace's time zone), and add recipient email addresses. On each run CrunchJunkie emails a branded report on your chosen day, and the live link and the PDF show the report's latest numbers. You decide the payload: a live link, a PDF attachment, or both. Before each send, the report's AI summaries are checked against the period being sent. One written for another period, or whose figures have changed since (by any amount you could see in the report), is written again for that period, with the same task, question and style and in the report's language, before the PDF is made, so the attachment and the link carry the new text. "Rewrite the AI summary for each send" in the schedule panel switches this on or off (it is on) and shows roughly what it uses: one assistant message per AI summary per send on Managed AI, nothing on your own AI key. When the report's period moves between sends, as last month does on a monthly send or the last 7 days on a weekly one, that is every send. Where it can, this work is done in the hours before a scheduled send, once the period it will send has ended, each summary once per send, so the email itself is not held up. A send whose summaries were checked in the last two hours goes out without checking again. Figures can still move after a check (Google Ads crediting conversions late, say): when the check is older, the send reads the figures again and rewrites a summary only if they moved materially (3 %, or at least one conversion), so a smaller change after the check goes out as written. Report emails only ever use up to 80 % of the month's assistant messages, so your team keeps the rest for Ask Crunch and the report widget; past that, and whenever a summary can't be written again (rewrites switched off, no AI key, an error from the AI provider), the email still goes out and the summary in it is marked when it no longer matches, as on the link: with the day it was written and a line saying the figures have changed since, or, if it was written for another period, folded down to one line naming that period. A summary that is still current goes out as it is, and so does one written before October 2026 that can't be dated when it can't be written again. The same check runs when you press Send for a one-off email of the report's own period; a one-off email of another range leaves the summary as it is. In Settings → Billing, the usage statement's "Started from" tab lists these rewrites under assistant messages as "Report emails". (A monthly copy gets its own summary, written for its month.)
Pause or edit a schedule at any time; changes take effect on the next run. This is the core loop of the product — connect once, build once, and let the reports send themselves.
If you keep one report per month instead of one that rolls forward, a monthly copy makes next month's report for you: on the day you pick, the report is copied with the month that just ended as fixed dates and a name like "Google Ads Report - September 2026". See Monthly copies under Reporting.
White-label delivery
Everything that reaches the client can carry your identity instead of ours. On white-label plans (Starter and up), shared reports and PDFs drop CrunchJunkie branding and use your logo, name and brand colour — even the browser tab and link preview — and report emails go out under your agency's name (with replies routed to you).
On Pro and up you can go further and host live report links on your own domain, for example reports.youragency.com. Setting it up takes four steps:
1) In Settings → White label → Custom report domain, type the subdomain you want to use (a subdomain like reports.youragency.com is recommended — you keep your main website exactly where it is).
2) CrunchJunkie shows you one DNS record to add. Go to your DNS provider — the company you registered the domain with, or wherever your DNS is managed (Cloudflare, GoDaddy, Namecheap, IONOS, and so on) — and add a CNAME record: Type = CNAME, Name/Host = your subdomain (e.g. "reports"), Value/Target = cname.vercel-dns.com. Save it there.
3) Back in CrunchJunkie, click Save, then Verify. DNS changes can take anywhere from a couple of minutes to a few hours to propagate, so if it doesn't verify on the first try, wait a bit and click Verify again.
4) Once it shows "Live", the SSL certificate (the https padlock) is issued and renewed automatically — nothing to install. From that moment, every shared report link and every scheduled report email uses your domain.
A couple of tips: always use a subdomain (reports.youragency.com), not your bare root domain, so your website is untouched; and if you host DNS on Cloudflare, set that record's proxy status to "DNS only" (grey cloud) so the certificate can be issued.
Delivery and open tracking
You shouldn't have to chase a client to confirm they got their report. Every scheduled send is logged on the report's Delivery tab with its delivery status and whether it was opened, so you can see at a glance who has and hasn't engaged. If a report didn't land — a bounced address, say — you'll see it there rather than discovering it in a meeting. It turns "did you receive last month's report?" into something you can simply check.
Getting started Reporting Report templates Filtering, dimensions & comparisons Metrics glossary AI visibility AI Shopping Visibility GEO Audit Rank Tracker Signals & Automations AI traffic from GA4 Integrations Data, privacy & security The Crunch assistant Connect to Claude & ChatGPT (MCP) Account & billing Refer a friend FAQ