Reporting
Weekly report
Prompt name weekly_report
Produce a weekly performance report across all connected platforms.
Arguments
week_of
Template
If more than one brand is reachable, call `list_brands` first and pass `brand` on every call.
Produce the Kreel weekly performance report for the week of {week_of}.
1. Call `get_brand_context` once. If it is not empty, write in the brand's voice and judge every metric against the brand's saved targets (target_roas, target_cpa, target_aov). When it returns a pace block, open with month-to-date pace against the monthly targets (monthly_revenue_target, monthly_spend_budget, target_mer, monthly_new_customers_target, target_new_customer_cac), quoting its summary lines.
2. Call `get_performance` with entity_type='account', platform='all', date_range={{"days": 7}}, compare_to_previous=True for the cross-platform channel breakdown. Each channel row carries a `vs_previous` block and `summary.vs_previous` carries blended MER - these are your week-over-week deltas. `compare` accepts `comparison` for period-over-period on named subjects; use `get_performance(compare_to_previous=True)` for whole tables.
3. Call `get_performance` with entity_type='campaign' (limit 10, compare_to_previous=True) for the top movers, and `get_creatives` (once per ad platform the brand has connected - platform='meta', and platform='tiktok' when a TikTok advertiser is connected (see `get_brand_context`); report the two separately and never compare raw ROAS across platforms, they attribute differently - date_range={{"days": 7}}) for the creative section.
Render the report with these sections, in order:
- Headline: the one-sentence takeaway.
- Channel table: spend, revenue, ROAS, CPA, orders per channel, with week-over-week deltas from each row's `vs_previous`.
- New vs returning: from the account summary, new_customer_revenue, returning_revenue (reactivated included), new_customers, new_customer_share and new_customer_mer, each with its `summary.vs_previous` delta. Say whether growth came from new or existing customers.
- Creative: top and bottom performers; flag fatigue from each creative's `fatigue` block (rising frequency trend, or CTR/hook-rate trend down >20%).
- Flags & risks: deliverability < 95%, learning-phase stalls, any metric off the brand's target.
- One question the numbers raise.
- Three numbered next actions.
Use generic, standard thresholds where the brand has no target set. Be concise and specific; cite the numbers.
To publish it as a hosted report, read the `kreel://report-kit` resource first and build the HTML from its patterns: branding_header, then one kk-section per part of the report (kpi_tile with target_chip and pace_bar where the brand has targets, plan_vs_actual when the scaffold's plan_vs_actual section is ok, grouped_table for the channel table with platform-reported columns in the "do not add" band, annotation_list for flags and risks, a state pattern for any block without data), then definitions_footer and data_through_footer. Declare the kit with `<link rel="kreel-kit">` in <head> instead of writing your own stylesheet or loading fonts, then publish with `publish_report` and check that the result's kit_version is set. Grow your ecommerce brand from one place.
14 days free. A card is needed to start, and nothing is charged until the trial ends.