DATA OPS

BigQuery Cost Attribution: Alert Top Query-Spend Growers

Each morning, attributes yesterday's BigQuery slot and on-demand spend to query owners, finds whose spend grew most week-over-week.

CategoryData Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule at 8am
  • ActionQuery JOBS_BY_PROJECT spend per owner (yesterday + 7-day baseline)Google BigQueryBigQuery
  • LogicRank owners by week-over-week growth, keep those over threshold
  • ActionFetch each flagged owner's top 3 costliest queriesGoogle BigQueryBigQuery
  • OutputDM each owner their growth and query breakdown in SlackSlack

What it does

It turns raw `INFORMATION_SCHEMA.JOBS` billing data into a per-owner accountability nudge. Every morning it computes each owner's BigQuery spend for the prior day, compares it to their trailing 7-day average, ranks the biggest growers, and sends each one a private Slack message listing their three most expensive queries so they can fix or justify them.

When to use it

Use it when warehouse spend is creeping up and finance can't tell who is driving it. Instead of a monthly bill surprise, the people writing expensive queries get same-day, personalized feedback — closing the loop where the cost is actually created.

How it works

  1. 1A daily schedule fires at 8am.
  2. 2A BigQuery query reads `INFORMATION_SCHEMA.JOBS_BY_PROJECT`, summing `total_bytes_billed` and slot-ms per `user_email` for yesterday and for the prior 7 days.
  3. 3A logic step computes each owner's day-over-baseline growth and keeps only those above the growth threshold.
  4. 4For each flagged owner, BigQuery returns their top 3 costliest queries with bytes and estimated dollar cost.
  5. 5A Slack DM is sent to each owner with their growth percentage and query breakdown.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect BigQueryDatasets, queries, schemas.
  2. 2
    Connect SlackChannels, DMs, threads, mentions.
  3. 3
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  4. 4
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  5. 5
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.