Before you start
- Campaign Manager + Insight Tag + offline conversion uploads all functional
- Looker Studio account (free) or equivalent BI tool
- Native LinkedIn → Looker Studio connector authorized
- Decision on dashboard audience: daily-ops users vs stakeholder viewers (each needs a different build)
- 30+ days of campaign data to populate trend charts meaningfully
The playbook
8 steps
Pick the dashboard tool - Campaign Manager isn't enough
Campaign Manager has a passable table view but is not a dashboarding tool. For performance dashboards you want: Looker Studio (free, native LinkedIn connector), HubSpot dashboards (if you're already in HubSpot), or Tableau/Sigma/Hex for enterprise stacks. Looker Studio is the default recommendation for 80% of accounts - free, fast to build, native LinkedIn data source.
Expected outcome
Dashboard tool selected; LinkedIn connector authorized.
Layout: headline metrics on top, segmentation below
Top row (4-6 tiles): the metrics stakeholders glance at first - Spend, Pipeline Contribution, Cost per SQL, Conversion Rate. Each tile shows current period + % change vs previous period. Middle: trend charts (spend over time, CPL over time, CPSQL over time). Bottom: segmentation tables - by campaign, by audience, by creative. This top-to-bottom flow matches how people actually read dashboards.
# Dashboard layout: ROW 1: Headline metrics (4-6 tiles, current + % change) - Spend | Pipeline contribution | CPSQL | Conversion rate ROW 2: Trend charts (3 charts) - Spend trend | CPL trend | CPSQL trend (last 90 days) ROW 3: Segmentation tables (2 tables) - By campaign | By audience ROW 4: Creative performance (1 table) - Creative variant | impressions | CTR | CPLExpected outcome
Dashboard layout follows headline → trend → segmentation pattern.
Lead with Cost per SQL, not Cost per Lead
Cost per Lead is the default Campaign Manager metric; Cost per SQL is what determines whether LinkedIn is working. Make CPSQL the headline tile, with CPL shown alongside for context. Without offline conversion uploads flowing, CPSQL isn't computable - this is the prerequisite that most dashboards skip and then wonder why their performance signal is wrong.
TipThe dashboard's job is to make CPSQL impossible to ignore. Put it top-left, biggest font, with a trend arrow. If the team optimizes on what's visually prominent (and they will), make sure what's prominent is the right metric.Expected outcome
CPSQL is the visually-dominant headline metric; CPL shown alongside as context.
Add the 'attention required' filter
Build a saved filter that surfaces campaigns matching: CPSQL >50% above account average, OR spend pace <70% of daily budget, OR CTR dropped >30% week-over-week. This is the 'campaigns to look at first' view - it pulls problem campaigns to the top without you having to scan the whole list. The dashboard's job is to surface the 3 campaigns worth attention, not to display 30 campaigns.
Expected outcome
Attention filter live; surfaces problem campaigns at the top of the dashboard.
Segment by audience demographics, not just by campaign
Most dashboards segment by campaign and stop there. The signal that informs the most decisions is audience demographic segmentation - which job functions, seniorities, industries, company sizes are converting. Pull Campaign Manager → Breakdown by Member Demographics → all four dimensions. Build dashboard panels showing CPSQL by each dimension. 'VPs convert at $280 CPSQL, Directors at $620 CPSQL' is the kind of insight that drives audience-tightening decisions.
Expected outcome
Demographic breakdown panels live - CPSQL by Job Function, Seniority, Industry, Company Size.
Add the creative performance panel
Surface each creative variant with: impressions, CTR, engagement rate, CPL. Order by impressions descending. Add a 'days since launched' column - creative >21 days old is at risk of fatigue. The panel makes creative-refresh decisions explicit: if a high-impression variant is at day 28 with CTR declining, it's time to swap.
Expected outcome
Creative panel showing variant-level CTR + age; refresh decisions data-driven.
Set the refresh schedule to daily
Looker Studio refreshes the LinkedIn connector on a schedule you set. Daily is the right cadence - hourly is unnecessary (LinkedIn data is reported daily anyway), weekly leaves you blind to fast-moving issues. Set refresh to early morning so the dashboard is current when your team opens it for daily ops checks.
Expected outcome
Dashboard refreshes daily before business hours; team sees current data on first check.
Share with role-appropriate permissions
Looker Studio share permissions: 'View only' for stakeholders (CMO, CFO, sales leadership). 'Edit' for marketing ops team. Direct shareable link distributed to stakeholders + bookmarked in browser by daily users. Avoid email-attaching dashboard screenshots - the live link is the dashboard's actual value.
Expected outcome
Dashboard shared with role-appropriate permissions; stakeholders have bookmarked live link.
Shuttergen
Dashboards need creative variants worth comparing.
Performance dashboards stall when creative volume is low - 2 variants, no story. Shuttergen generates 8-12 thought-leader-style variants per campaign so the creative-performance panel has real comparisons to surface.
Pitfalls
What goes wrong
Dashboarding in Campaign Manager only
Campaign Manager's table view is for daily ops, not stakeholder dashboards. Use Looker Studio (or equivalent) for stakeholder-facing performance dashboards - the layout flexibility is the whole point.
Leading with Cost per Lead
CPL hides audience-quality differences. CPSQL is what determines whether LinkedIn is working. Make CPSQL the visually-dominant headline metric.
No 'attention required' filter
Without an explicit problem-surface filter, dashboards become data dumps. Build a saved view that pulls problem campaigns to the top - that's where the dashboard's value is.
Segmenting by campaign only
Audience demographic segmentation (Job Function, Seniority, Industry, Company Size) drives more decisions than campaign-level segmentation. Add demographic panels.
Weekly or manual refresh
Daily refresh is the right cadence. Manual refresh means the dashboard is stale 50% of the time. Schedule daily early-morning refresh.
Limits
When this playbook won't work
- Accounts without offline conversion uploads - CPSQL can't be computed, the dashboard's headline metric breaks down
- Accounts with fewer than 2-3 campaigns - segmentation panels have nothing to compare
- Stakeholders who only want PDF reports - a live dashboard's value is being live; PDF distribution requires a different artifact
What makes a performance dashboard worth opening daily
It surfaces decisions, not data. A dashboard that shows 47 metrics across 12 panels is a data warehouse. A dashboard that surfaces 'these 3 campaigns need attention this week' is a decision tool. The 'attention required' filter is the single highest-leverage element - it does the triage work for you.
It puts the right metric in the most visual position. Top-left, biggest font is where the eye lands first. Whatever metric lives there is what the team will optimize toward. If you put CPL there, you'll get CPL-optimized decisions (which often defund the highest-pipeline-contribution campaigns). Put CPSQL there.
It updates without you remembering. Manual-refresh dashboards become stale dashboards. Daily auto-refresh from the LinkedIn connector means the dashboard is always current when someone opens it - which is what makes it worth opening.
Dashboards need creative variants worth comparing. Performance dashboards stall when creative volume is low - 2 variants, no story. Shuttergen generates 8-12 thought-leader-style variants per campaign so the creative-performance panel has real comparisons to surface.
The single panel most dashboards skip - and shouldn't
Audience demographic breakdown by CPSQL. Most dashboards segment by campaign, and stop. The decisions that move performance most come from demographic-level signals - which seniority converts, which industries convert, which company sizes convert. Pull Campaign Manager's Breakdown by Member Demographics into a Looker Studio panel showing CPSQL by Job Function + Seniority + Industry + Company Size.
The pattern that shows up everywhere: VPs and Directors convert at very different CPSQL. C-Suite is usually highest CPSQL (expensive to reach, fewer of them, harder to convert) but with the largest deal sizes. Marketing Operations converts cheaper than Marketing Leadership. SaaS companies convert cheaper than legacy enterprise. None of this shows up in campaign-level reporting.
Decisions that flow from demographic segmentation: Audience tightening (drop the seniority levels with bad CPSQL). Audience expansion (add the industries with good CPSQL but low impression share). Creative tailoring (build separate creative for the seniority levels you're trying to convert).
Internal: linkedin-ads-dashboard, linkedin-ads-reporting, linkedin-ads-targeting.
FAQ
Frequently asked
What tool should I use for a LinkedIn ads performance dashboard?
What metrics belong on a LinkedIn ads performance dashboard?
How is a performance dashboard different from a regular dashboard?
How often should a LinkedIn dashboard refresh?
Should I segment by campaign or by audience?
Why use CPSQL instead of CPL as the headline metric?
Should stakeholders have direct access to the live dashboard?
Related
Keep reading
Resource
Linkedin ads dashboard
Campaign Manager dashboard the live dashboard pulls from.
Resource
Linkedin ads reporting
Reporting workflow the dashboard supports.
Resource
Linkedin ads report
Stakeholder report built alongside the dashboard.
Resource
Linkedin ads targeting
Targeting decisions informed by demographic segmentation.
Resource
Linkedin ads api
API alternative for custom dashboard builds.
Dashboards need creative variants worth comparing.
Performance dashboards stall when creative volume is low - 2 variants, no story. Shuttergen generates 8-12 thought-leader-style variants per campaign so the creative-performance panel has real comparisons to surface.