Agency Portfolio Reports
Build agency-level reports that aggregate across every connected client brand. P&L, marketing, order summary, and period comparisons - exportable as white-label PDFs.
Agency Portfolio Reports
Portfolio reports at /dashboard/portfolio/reports are the agency-level counterpart to the per-brand Reports library. They aggregate metrics across every connected client brand into a single report - useful for board updates, internal portfolio reviews, or sending consolidated client decks.
Available on: Agency workspaces only. Find them under Portfolio > Reports in the sidebar (3PL agency workspaces get the same link under Fulfillment Ops). Per-brand merchant reports remain available inside each client workspace via the standard Reports page.
Available Templates
The reports library ships eight agency-specific report types. Each one rolls data up across the portfolio rather than scoping to a single brand.
| Template | What it shows |
|---|---|
| P&L Report | Full profit and loss waterfall across all brands |
| Marketing Overview | Ad spend, ROAS, and campaign performance across platforms |
| Order Summary | Order volume, revenue, and refund trends |
| Expense Breakdown | OPEX, CAPEX, and variable cost breakdown |
| Fulfillment Operations | Order volume, fulfillment costs, shipping costs, and refunds across brands |
| Month over Month | Monthly performance comparison |
| Week over Week | Weekly performance comparison |
| Year over Year | Annual performance comparison |
Product Performance is deliberately absent from the portfolio list -- product rollups only make sense per brand. It is available when you build a report scoped to a single client from that client's detail page.
How to Build a Portfolio Report
- Open
/dashboard/portfolio/reports - Click New Report
- Give it a Report Name and pick a Report Type from the list above
- Click Create Report
- Adjust the date range using the global timeframe selector
Reports persist and re-aggregate automatically with fresher data the next time you open them. The dashboard's global timeframe selector applies to portfolio reports the same way it applies to other dashboard pages.
Drill Into a Saved Report
Click any saved report to open /dashboard/portfolio/reports/<id>. The detail page shows:
- The aggregated tables (P&L lines, marketing platform breakdowns, expense categories, etc.)
- Period-over-period deltas with up/down/flat indicators where applicable
- A Refresh action to recompute against the latest sync data
- A CSV export of the report's table data
- A Download PDF action. The export itself needs the
customReportsplan feature (Pro and above); the agency branding on it needswhiteLabelExports, which a billed agency workspace carries. Without white-label access the PDF renders with MerchantFlow's own branding rather than failing
White-Label PDF Export
Plus-tier agencies can export any portfolio report as a branded PDF using the agency's logo, brand primary colour, and contact details from Settings > Branding (/dashboard/settings/branding). See Agency Workflows for the branding setup.
Frequently Asked Questions
How is this different from per-brand reports?
Per-brand reports live inside the merchant workspace at /dashboard/reports and only see that brand's data. Portfolio reports live in the agency workspace at /dashboard/portfolio/reports and aggregate across every connected client brand. You typically use both - portfolio reports for internal review, per-brand reports as deliverables to individual clients.
Can I filter portfolio reports to a subset of brands?
The current product aggregates across the full portfolio. Use per-brand reports inside each client's merchant workspace if you need a single-brand deliverable.
Do portfolio reports respect the same timezone-safe aggregation as merchant reports?
Yes, and they go a step further. Rather than forcing every brand onto the agency's timezone, a portfolio rollup groups brands by their own workspace timezone (and their own refund cost-recognition setting) so each client's day boundaries stay correct, then lines the results up on a shared calendar axis. Two clients in different timezones still land on the same report row.
Can I schedule report delivery for a client?
You can save one, but it does not send yet. Schedules are configured from a client's detail page under Clients > client > Schedule, and cadence follows the same tier rules as merchant reports - Pro is weekly only, Plus allows daily, weekly, or monthly, and Starter has no scheduling. Each schedule takes up to 10 recipient addresses. See Pricing Plans.
Delivery itself is still switched off platform-wide: the dispatcher that emails due schedules is gated behind a server-side flag that is off by default, so saved schedules sit dormant rather than firing. Saved configuration is preserved and will start sending once it is turned on -- until then, send client deliverables manually. There is no scheduling control on the portfolio reports pages themselves.
Related Guides
- Reports - per-brand reporting (works inside any client workspace)
- Agency Workspace Dashboard - portfolio overview and clients
- Agency Workflows - branding, white-label PDFs, and onboarding
- Portfolio Fulfillment - 3PL portfolio dashboard
Last updated: August 29, 2026
Last updated on
Agency Portfolio Fulfillment View
Cross-brand 3PL fulfillment monitoring for agency workspaces. Track orders fulfilled, fulfillment costs, return rates, and at-risk clients across every connected brand.
KPI Metrics & Definitions
Understand how MerchantFlow calculates Revenue, Impressions, Clicks, Conversion Rate, and other KPIs. Configure your dashboard with North Star Metrics.