Skip to content

Weekly marketing report

Business task

The CMO needs a weekly report for the marketing team meeting and for leadership. The report should include: a summary across all ad channels (spend, leads, CPL), creative performance, sales funnel conversion, manager performance, plus key insights and recommendations for the following week. The report needs to be ready by 9:00 AM Monday.

Report architecture

This recipe is composite — it aggregates data from the following recipes:

  1. Meta Ads and Google Ads conversion report — ROAS and conversions for the two main channels
  2. Meta Ads creative performance — the best and worst creatives for the week
  3. Pipedrive funnel conversion — sales funnel bottlenecks
  4. Bitrix24 sales rep performance report — manager KPIs
  5. Multi-channel ROAS → Kommo — ROAS across all channels

If any of these recipes haven't been set up yet, run them individually following the instructions in the corresponding files.

Connections (via compose reports)

All connections are configured in the underlying recipes. A complete weekly report requires:

ConnectorUsed in which recipes
meta-adsconversion-report, creative-performance, multi-source-roas
google-adsconversion-report, multi-source-roas
tiktok-adsmulti-source-roas
kommomulti-source-roas
pipedrivefunnel-conversion
bitrix24sales-by-manager

If your stack is different (for example, you use HubSpot instead of Pipedrive), replace the corresponding source recipe with the equivalent — for example, Deal loss reasons in HubSpot.

Report settings

  • Name: Weekly marketing report
  • Report type: composite
  • Source reports: conversion-report, creative-performance, funnel-conversion, sales-by-manager, multi-source-roas
  • Date range: last_week for operational metrics
  • Comparison period: previous_period — the prior week for week-over-week comparison
  • Grouping: by source report, channel, and day of week
  • Timezone: Europe/Moscow

Parameters

json
{
  "type": "composite",
  "source_reports": [
    "conversion-report",
    "creative-performance",
    "funnel-conversion",
    "sales-by-manager",
    "multi-source-roas"
  ],
  "date_range": "last_week",
  "compare": "previous_period",
  "group_by": ["source_report", "channel", "day_of_week"],
  "timezone": "Europe/Moscow"
}

Week-over-week comparison (compare: "previous_period") is a key feature of the weekly report. Every table shows not just the value for this week, but also the prior week, with both an absolute and percentage change. Green up arrows mean growth, red down arrows mean decline.

Report metrics

A summary of key metrics by block:

Block 1: Channel performance

MetricTypeDescription
spend_by_channelcurrencySpend by channel
leads_by_channelnumberLeads by channel
cpl_by_channelcurrencyCPL by channel
roas_by_channelpercentROAS by channel
revenue_by_channelcurrencyRevenue by channel

Block 2: Creatives

MetricTypeDescription
top_ctr_creativeslistTop 5 creatives by CTR
top_roas_creativeslistTop 5 creatives by ROAS
worst_ctr_creativeslistBottom 5 creatives by CTR

Block 3: Sales funnel

MetricTypeDescription
funnel_stageslistStage-by-stage funnel conversion
bottleneck_stagestringStage with the worst conversion
avg_cycle_daysnumberAverage deal cycle length, in days

Block 4: Managers

MetricTypeDescription
top_managerstringTop manager by revenue
top_win_ratepercentBest Win Rate
avg_check_by_managercurrencyAverage order value by manager

Calculated metrics:

json
{
  "calculated_metrics": [
    {
      "name": "wow_spend_change",
      "formula": "ROUND(([spend] - [spend_prev]) / ABS([spend_prev]) * 100, 1)",
      "type": "percent",
      "description": "Week-over-week spend change"
    },
    {
      "name": "wow_leads_change",
      "formula": "ROUND(([leads] - [leads_prev]) / ABS([leads_prev]) * 100, 1)",
      "type": "percent",
      "description": "Week-over-week lead change"
    },
    {
      "name": "wow_roas_change",
      "formula": "ROUND(([roas] - [roas_prev]) / ABS([roas_prev]) * 100, 1)",
      "type": "percent",
      "description": "Week-over-week ROAS change"
    }
  ]
}

Filters

No filters are applied at the composite report level — each source report uses its own filters.

Write mode

Mode: Replace

A composite report doesn't store its own data and is always rebuilt on each run.

Schedule

json
{
  "schedule": {
    "enabled": true,
    "interval": "weekly",
    "time": "09:00",
    "timezone": "Europe/Moscow",
    "days_of_week": [1],
    "retry_on_failure": true,
    "max_retries": 3
  }
}

Running on Mondays at 9:00 AM means the report is ready by the start of the team meeting. Make sure all source reports are scheduled earlier (no later than 8:30 AM), otherwise the weekly report will be assembled from stale data.

Recommendation: set up a dependency chain in LightLead: source reports run first, and the composite report runs only after they complete successfully. This guarantees data freshness.

Expected result

After a successful run:

  • Status: completed
  • Format: a structured report with 4 blocks, ready to present at the team meeting
  • Contents:
    • Block 1: a channel table with WoW changes — immediately shows which channel is underperforming
    • Block 2: top 5 and bottom 5 creatives — recommendations for replacing underperforming creatives
    • Block 3: the funnel with the bottleneck highlighted — focuses the team on the problem stage
    • Block 4: top manager and bottom manager — the basis for KPIs and motivation
  • Export: automatic delivery to Google Slides or PDF for distribution to the team
  • WoW trends: red and green change indicators for a quick read on momentum

Screenshot

[Screenshot]

[Screenshot]

Maintained by the LightLead Documentation Team · Last verified: 2026-07-26