Report templates
Creative review
Prompt name creative_review
Creative performance per ad platform vs the prior equal window (window START..END or latest).
Arguments
window
Template
If more than one brand is reachable, call `list_brands` first and pass `brand` on every call.
Arguments: window = START..END dates, or 'latest' for the last 30 complete days.
1. Call `get_report_scaffold` with template='creative_review', window='{window}'. It returns the current window, its comparisons (a comparison that predates retained history comes back omitted with its reason), and one section per part of the report. Every number carries a source_id that resolves in `sources`; cite them and never recompute or estimate a figure. If it returns an error, fix the argument and retry.
2. Call `get_brand_context` once for the brand's voice and positioning.
Render a creative review: channel table (the do-not-add band) → one block per ad platform section (creatives_meta, creatives_tiktok): totals with previous_period deltas, top creatives by spend, fatigue and any ads without a creative → learnings → three creative tests to run next. Report each platform separately and never compare raw ROAS across platforms; a measure a platform does not report stays omitted.
Rules: a section with status 'omitted' is rendered with the kit's unavailable state and its omitted_reason, never as zero. Store revenue is refund-correct net; a section marked do_not_add holds platform-attributed figures that must never be added to store revenue or across channels. Show a KPI's target chip only when the scaffold carries a target. Quote contribution margin only with its cost coverage and the current-cost label. Render `sources` as the definitions footer.
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.