This document contains identifiable user data (email addresses). Handle accordingly.
region-us) processed 7,948 TiB in 30 days at an on-demand compute cost of $49.7K/mo, averaging 0 slots. The dominant cost driver is storage tco optimization. On-demand compute costs $49.7K/mo. Editions projection is $47.7K/mo (1.0× on-demand). Measured slot consumption: ~0 average slots, break-even at 1,134 slots (Enterprise $0.06/slot-hr). Quantified savings across all findings total $2.5K/mo (5% of in-scope spend, findings may overlap). Full quantification: §6.| Measure | Value | Derivation |
|---|---|---|
| Bytes billed (30d) | 7,948 TiB | SUM(total_bytes_billed) from top_spenders |
| On-demand compute cost | $49.7K/mo | TiB × $6.25/TiB ❌ Variance: 85.4% |
| Average slots | 0 | SUM(total_slot_ms)/3.6e6 ÷ 730h |
| Editions cost (3yr rate) | $47.7K/mo | Slot simulation (3yr commit baseline + PAYG autoscale) |
| Storage cost | $3.3K/mo | Active + long-term, by billing model |
| Total in-scope spend | $52.9K/mo | Compute + storage |
SUM(total_bytes_billed) × $6.25/TiB. Every savings figure in this report is expressed as a percentage of one of these baselines.INFORMATION_SCHEMA.JOBS data. Pricing rates are as of the assessment date and vary by region. Re-measure at 30/60/90 day intervals to track progress.Estimates are non-binding modelling based on historical usage. Savings de-overlapped by lever — see §6.
This assessment evaluates BigQuery spend, architecture, and operational risk across
four core FinOps dimensions using 30-day execution telemetry from
INFORMATION_SCHEMA and Cloud Billing.
| Dimension | What We Evaluate | Primary Telemetry & Signals | Key Cost & FinOps Levers |
|---|---|---|---|
| Compute Model & Capacity Sizing | Alignment between pricing tier (On-Demand vs. Editions) and actual slot consumption profile. | total_slot_ms, baseline vs. peak slot ratios, idle slot availability. |
Edition selection (Standard/Enterprise), slot commitments, idle slot sharing across reservations. |
| Query Execution & Efficiency | Query anti-patterns, redundant data scans, and compute inefficiencies. | total_bytes_billed, column pruning rate, SELECT * frequency, 10 MB floor impact. |
Partitioning/clustering pruning, Materialized Views, BI Engine acceleration. |
| Storage Architecture & Lifecycle Economics | Storage billing models, compression efficiencies, and backup overhead. | Logical vs. physical byte ratios, table churn (>0.5), Time-Travel overhead. | Physical storage billing adoption, 48h Time-Travel limit, zero-copy Table Snapshots, dataset TTLs. |
| Governance, Attribution & Risk Control | Spend visibility, project guardrails, and uncontrolled cost exposure. | Custom quota configurations, max_bytes_billed settings, reservation assignments. |
Execution vs. storage project decoupling, custom user/project quotas, budget alerts. |
Scope: Evaluates whether compute capacity matches workload patterns and if the pricing structure minimizes unit cost.
Focus Areas: Comparing On-Demand ($6.25/TiB) against Editions slot-hour pricing; tuning baseline versus autoscaling slot limits; locking in 1-year or 3-year commitments for sustained compound usage; and consolidating workloads under shared Admin Projects to leverage idle slot sharing.
Scope: Targets query execution anti-patterns that unnecessarily inflate scanned byte counts or slot consumption.
Focus Areas: Eliminating column-pruning failures (SELECT *); enforcing required
partition filters (require_partition_filter); deploying Materialized Views for recurring
aggregations; and assigning BI Engine capacity to eliminate scan costs on cached BI queries.
Scope: Optimizes dataset storage pricing models, table backup strategies, and lifecycle management.
Focus Areas: Migrating high-compression datasets to Physical Storage Billing; replacing full copy tables with zero-copy Table Snapshots; reducing Time-Travel retention from 7 days to 2 days on high-churn tables; and configuring automated partition and table expirations (TTLs).
Scope: Establishes organizational controls to prevent runaway costs and enable spend attribution.
Focus Areas: Decoupling data storage projects from execution billing projects; applying
project-level custom quotas and max_bytes_billed query flags; mapping reservation assignments to
business units; and configuring programmatic budget alerts.
demo-sandbox in region
region-us, managed via administrative project demo-admin.region-us.INFORMATION_SCHEMA.JOBS analyzing
30 days of execution metadata (retained natively up to 180 days).total_bytes_billed = 0 and are evaluated via slot-hour consumption
(total_slot_ms).region-us are excluded from this baseline.| Model | Estimated Monthly Cost (30-day baseline) | Rate |
|---|---|---|
| On-Demand | $49.7K | $6.25/TiB |
| Editions (Projected) | $47.7K | $0.06/slot-hr |
At $49.7K/mo on-demand, BigQuery Editions becomes cheaper only if sustained average slot consumption stays below:
| Tier | Rate | Break-Even (slots) |
|---|---|---|
| Enterprise PAYG | $0.06/slot-hr | 1,134 slots |
| Enterprise 1yr commit | $0.048/slot-hr | 1,418 slots |
| Enterprise 3yr commit | $0.036/slot-hr | 1,890 slots |
| Standard PAYG | $0.04/slot-hr | 1,701 slots |
Measured average consumption: ~0 slots
➖ Comparable costs. Evaluate based on performance and governance needs.
| Reservation | Balanced P95 | Autoscale Max | Perf. Max |
|---|---|---|---|
| default-or-on-demand | 8650 | 16100 | 13400 |
| default-pipeline | 800 | 6200 | 5150 |
| demo-admin:us-east4.res-default | 2550 | 5450 | 4550 |
| demo-admin:us-east4.res-standard-sandbox | 1050 | 2100 | 1750 |
| User | Bytes Billed | Cost (USD) | Queries | Billing Model |
|---|---|---|---|---|
| gcp-prd-svc-composer-dags01@prd-data-platform.iam.gserviceaccount.com | 1,690.2 TB | $12.5K | 142,500 | On-Demand |
| svc-looker-dashboard@prd-bi-serving.iam.gserviceaccount.com | 56.4 TB | $11.6K | 345,000 | Reservation (slot-attributed) |
| dbt-cloud-runner@prd-analytics-core.iam.gserviceaccount.com | 1,495.7 TB | $8.7K | 58,400 | On-Demand |
| svc-dataproc-worker@prd-mlops.iam.gserviceaccount.com | 0 B | $6.9K | 31,200 | Reservation (slot-attributed) |
| danny.rand@mbettan.com | 1,055.5 TB | $6.0K | 2,450 | On-Demand |
| svc-fivetran-loader@prd-raw-vault.iam.gserviceaccount.com | 58.7 TB | $3.0K | 210,000 | Reservation (slot-attributed) |
| wade.wilson@mbettan.com | 527.8 TB | $3.0K | 1,850 | On-Demand |
| svc-reverse-etl@prd-crm-sync.iam.gserviceaccount.com | 331.6 TB | $3.0K | 94,000 | On-Demand |
| riri.williams@mbettan.com | 419.2 TB | $2.8K | 4,120 | On-Demand |
| svc-kafka-stream-loader@prd-ingestion.iam.gserviceaccount.com | 3.5 TB | $2.5K | 520,000 | Reservation (slot-attributed) |
| shuri.udaku@mbettan.com | 67.3 TB | $2.2K | 3,200 | Reservation (slot-attributed) |
| svc-customer-portal-api@prd-backend.iam.gserviceaccount.com | 367.7 TB | $2.2K | 185,000 | On-Demand |
| peter.parker@mbettan.com | 384.8 TB | $2.2K | 1,420 | On-Demand |
| thor.odinson@mbettan.com | 34.6 TB | $1.8K | 2,900 | Reservation (slot-attributed) |
| yondu.udonta@mbettan.com | 285.9 TB | $1.6K | 980 | On-Demand |
| svc-dataform-compiler@prd-pipelines.iam.gserviceaccount.com | 129.5 TB | $1.5K | 42,000 | On-Demand |
| svc-security-audit@prd-infosec.iam.gserviceaccount.com | 0 B | $1.4K | 15,400 | Reservation (slot-attributed) |
| remy.lebeau@mbettan.com | 17.6 TB | $1.4K | 3,800 | Reservation (slot-attributed) |
| svc-marketing-attribution@prd-growth.iam.gserviceaccount.com | 196.3 TB | $1.2K | 28,000 | On-Demand |
| svc-tableau-connector@prd-reporting.iam.gserviceaccount.com | 12.8 TB | $1.1K | 89,000 | Reservation (slot-attributed) |
| Abuse Type | User | Billed GB | Query Snippet |
|---|---|---|---|
| [SELECT * ABUSE] | erik.lehnsherr@mbettan.com | 11,000 | SELECT * FROM `prd-core-data.analytics.fact_transactions` WHERE event_date > '2026-01-01' |
| [SELECT * ABUSE] | valkyrie.brunnhilde@mbettan.com | 9,500 | SELECT * FROM `stg-core-data.warehouse.dim_customers` LEFT JOIN `stg-core-data.warehouse.dim_address... |
| [SELECT * ABUSE] | hank.mccoy@mbettan.com | 6,900 | SELECT * FROM `prd-core-data.dw.fact_sessions` WHERE session_date BETWEEN '2026-01-01' AND '2026-06-... |
| [SELECT * ABUSE] | monica.rambeau@mbettan.com | 5,800 | SELECT * FROM `stg-example-data.staging.orders_raw` ORDER BY created_at DESC LIMIT 1000 |
| [SELECT * ABUSE] | heimdall.gatekeeper@mbettan.com | 4,000 | SELECT * FROM `stg-core-data.warehouse.dim_customers` LEFT JOIN `stg-core-data.warehouse.dim_address... |
| [SELECT * ABUSE] | luke.cage@mbettan.com | 4,000 | SELECT * FROM `stg-example-data.staging.orders_raw` ORDER BY created_at DESC LIMIT 1000 |
| [SELECT * ABUSE] | michelle.jones@mbettan.com | 3,900 | SELECT * FROM `prd-core-data.raw_events.clickstream_v2` WHERE _PARTITIONDATE = CURRENT_DATE() |
| [SELECT * ABUSE] | kamala.khan@mbettan.com | 3,600 | SELECT * FROM `prd-core-data.logs.audit_log_v3` WHERE timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(),... |
| [SELECT * ABUSE] | ben.grimm@mbettan.com | 3,300 | SELECT * FROM `prd-core-data.finance.gl_journal_entries` WHERE posting_date >= '2026-06-01' |
| [SELECT * ABUSE] | clint.barton@mbettan.com | 3,300 | SELECT * FROM `stg-core-data.warehouse.dim_customers` LEFT JOIN `stg-core-data.warehouse.dim_address... |
| [SELECT * ABUSE] | valkyrie.brunnhilde@mbettan.com | 3,200 | SELECT * FROM `stg-core-data.warehouse.dim_customers` LEFT JOIN `stg-core-data.warehouse.dim_address... |
| [SELECT * ABUSE] | katy.chen@mbettan.com | 3,100 | SELECT * FROM `stg-core-data.marketing.campaign_impressions` WHERE campaign_id IN (101, 205, 307) |
| [SELECT * ABUSE] | shang.chi@mbettan.com | 3,100 | SELECT * FROM `prd-core-data.analytics.fact_transactions` WHERE event_date > '2026-01-01' |
| [SELECT * ABUSE] | matt.murdock@mbettan.com | 3,000 | SELECT * FROM `stg-example-data.staging.orders_raw` ORDER BY created_at DESC LIMIT 1000 |
| [SELECT * ABUSE] | hope.vandyne@mbettan.com | 3,000 | SELECT * FROM `prd-core-data.analytics.fact_transactions` WHERE event_date > '2026-01-01' |
| [SELECT * ABUSE] | peter.quill@mbettan.com | 3,000 | SELECT * FROM `prd-core-data.analytics.fact_transactions` WHERE event_date > '2026-01-01' |
| [SELECT * ABUSE] | marc.spector@mbettan.com | 2,800 | SELECT * FROM `stg-example-data.staging.orders_raw` ORDER BY created_at DESC LIMIT 1000 |
| [SELECT * ABUSE] | clint.barton@mbettan.com | 2,800 | SELECT * FROM `stg-core-data.marketing.campaign_impressions` WHERE campaign_id IN (101, 205, 307) |
| [SELECT * ABUSE] | hope.vandyne@mbettan.com | 2,800 | SELECT * FROM `stg-example-data.staging.orders_raw` ORDER BY created_at DESC LIMIT 1000 |
| [SELECT * ABUSE] | bruce.banner@mbettan.com | 2,800 | SELECT * FROM `prd-core-data.logs.audit_log_v3` WHERE timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(),... |
| Workload | Slot Hours | Job Runs | Priority |
|---|---|---|---|
| analytics.fct_orders_daily | 186.44 | 412 | BATCH |
| erp_fact_load | 142.09 | 286 | BATCH |
| bi_scripts_exec_top_articles | 98.31 | 94 | BATCH |
| etl-loader@demo-sandbox.iam.gserviceaccount.com | 76.85 | 1,204 | BATCH |
| Scheduled Query Pipeline | 41.22 | 168 | BATCH |
| marketing_attribution | 22.60 | 77 | BATCH |
| Looker Studio Dashboard | 18.94 | 3,120 | INTERACTIVE |
| ned.leeds@mbettan.com | 9.37 | 486 | INTERACTIVE |
| Connected Sheets User | 3.18 | 212 | INTERACTIVE |
| Project | Reservation | Direct Cost | Total Attributed |
|---|---|---|---|
| pr-analytics-prod | prod-reservation | $12.5K | $14.0K |
| pr-data-warehouse | prod-reservation | $8.5K | $9.5K |
| sbx-sandbox-env | dev-reservation | $250.25 | $1.1K |
| Dataset | Current Model | Recommended | Monthly Cost | Savings |
|---|---|---|---|---|
| dataset_demo_038 | physical | logical | $1.3K | $814.44 |
| dataset_demo_044 | physical | logical | $230.98 | $127.75 |
| dataset_demo_047 | physical | logical | $225.55 | $114.55 |
| dataset_demo_245 | physical | logical | $121.43 | $71.38 |
| dataset_demo_189 | logical | physical | $71.84 | $73.05 |
| dataset_demo_213 | logical | physical | $57.15 | $47.03 |
| dataset_demo_065 | logical | physical | $43.93 | $27.37 |
| dataset_demo_080 | physical | logical | $63.39 | $21.83 |
| dataset_demo_181 | logical | physical | $55.66 | $24.83 |
| dataset_demo_148 | logical | physical | $25.91 | $16.41 |
| dataset_demo_199 | physical | logical | $138.28 | $15.48 |
| dataset_demo_211 | logical | physical | $50.39 | $19.34 |
| dataset_demo_190 | logical | physical | $20.16 | $16.75 |
| dataset_demo_188 | physical | logical | $16.23 | $11.72 |
| dataset_demo_233 | logical | physical | $21.85 | $11.55 |
| dataset_demo_217 | logical | physical | $17.81 | $11.51 |
| dataset_demo_124 | logical | physical | $23.18 | $10.09 |
| dataset_demo_237 | logical | physical | $12.53 | $8.10 |
| dataset_demo_198 | logical | physical | $8.65 | $5.33 |
| dataset_demo_232 | logical | physical | $8.99 | $4.81 |
| Table | Dataset | Risk | Partitioned | Clustered | Size | Issue |
|---|---|---|---|---|---|---|
| LND_PLAN_CUR | LND_ARCHIVE_HIST | Critical Risk | False | False | 79.3 TB | ⚠️ Partition + require_filter |
| TBL_SNAPSHOT_CUR | LND_EVENT_CUR | Critical Risk | False | False | 76.6 TB | ⚠️ Partition + require_filter |
| PREP_REFERRAL_CUR | TBL_ASSET | Critical Risk | False | False | 54.1 TB | ⚠️ Partition + require_filter |
| ROLLUP_REFUND | TBL_POSTING | Critical Risk | False | False | 45.8 TB | ⚠️ Partition + require_filter |
| TBL_CATEGORY_CUR | LND_EVENT_CUR | Critical Risk | False | False | 45.4 TB | ⚠️ Partition + require_filter |
| SRC_TERMINAL_V2 | LND_POSTING_HIST | Critical Risk | False | False | 22.4 TB | ⚠️ Partition + require_filter |
| LND_CONTRACT_CUR | LND_ARCHIVE_HIST | Critical Risk | False | False | 17.1 TB | ⚠️ Partition + require_filter |
| LND_TICKET_CUR | LND_ARCHIVE_HIST | Critical Risk | False | False | 17.1 TB | ⚠️ Partition + require_filter |
| SRC_FORECAST_V2 | LND_METRIC_HIST | Critical Risk | False | False | 16.5 TB | ⚠️ Partition + require_filter |
| SRC_HISTORY_V2 | LND_CONTROL_HIST | Critical Risk | False | False | 15.4 TB | ⚠️ Partition + require_filter |
| EXP_ADDRESS_CUR | tbl_session_001 | Critical Risk | False | False | 12.4 TB | ⚠️ Partition + require_filter |
| FCT_TICKET_HIST | TBL_ASSET | Critical Risk | False | False | 12.2 TB | ⚠️ Partition + require_filter |
| FCT_CONTRACT_HIST | TBL_ASSET | Critical Risk | False | False | 12.1 TB | ⚠️ Partition + require_filter |
| FCT_CHANNEL_HIST | TBL_ASSET | Critical Risk | False | False | 12.0 TB | ⚠️ Partition + require_filter |
| FCT_OPPORTUNITY_HIST | TBL_ASSET | Critical Risk | False | False | 12.0 TB | ⚠️ Partition + require_filter |
| FCT_LEAD_HIST-01-1026 | TBL_ASSET | Critical Risk | False | False | 12.0 TB | ⚠️ Partition + require_filter |
| SRC_VENDOR_V2 | LND_INVOICE_CUR | Critical Risk | False | False | 11.2 TB | ⚠️ Partition + require_filter |
| TBL_LOOKUP_V2 | CORE_CATALOG_HIST | Critical Risk | False | False | 10.6 TB | ⚠️ Partition recommended |
| FEED_PRODUCT_DLY | LND_USAGE_HIST | Critical Risk | False | False | 10.5 TB | ⚠️ Partition recommended |
| PREP_NOTIFICATION_CUR | TBL_ASSET | Critical Risk | False | False | 10.3 TB | ⚠️ Partition recommended |
| Table | Dataset | Active GB | Health | Churn Ratio |
|---|---|---|---|---|
| table_product_tmp | dataset_demo_038 | 2,975.00 | High Churn/Recreate Detected | 0.72 |
| table_snapshot_ext | dataset_demo_044 | 392.57 | High Churn/Recreate Detected | 0.78 |
| table_lookup_ext | dataset_demo_003 | 0.00 | High Churn/Recreate Detected | 0.45 |
| table_archive_ext | dataset_demo_003 | 0.00 | High Churn/Recreate Detected | 0.88 |
| table_order_tmp | dataset_demo_003 | 0.00 | High Churn/Recreate Detected | 0.68 |
| table_history_ext | dataset_demo_003 | 0.00 | High Churn/Recreate Detected | 0.32 |
| table_customer_tmp | dataset_demo_026 | 456.28 | High Churn/Recreate Detected | 0.65 |
| table_control_ext | dataset_demo_003 | 0.00 | High Churn/Recreate Detected | 0.59 |
| table_staging_ext | dataset_demo_003 | 0.00 | High Churn/Recreate Detected | 0.83 |
| SRC_REFERRAL_V2 | dataset_demo_221 | 1,445.00 | Healthy | 0.11 |
| REF_FULFILMENT_V2 | dataset_demo_199 | 567.47 | High Churn/Recreate Detected | 0.75 |
| CORE_BASKET | dataset_demo_044 | 127.50 | High Churn/Recreate Detected | 0.48 |
| TBL_LOYALTY | dataset_demo_078 | 115.37 | High Churn/Recreate Detected | 0.92 |
| REF_CARRIER_V2 | dataset_demo_063 | 1,615.00 | Healthy | 0.02 |
| SRC_NOTIFICATION_V2 | dataset_demo_222 | 487.62 | High Churn/Recreate Detected | 0.36 |
| REF_CHANNEL_V2 | dataset_demo_063 | 2,295.00 | Healthy | 0.05 |
| Dataset | Billing | Current Window (d) | TT (GiB) | Savings ($/mo) | DDL |
|---|---|---|---|---|---|
| dataset_demo_003 | PHYSICAL | 7 | 4,200.50 | $120.01 | ALTER SCHEMA `prd-core-data.dataset_demo_003` SET OPTIONS(default_time_travel_hours = 48); |
| dataset_demo_038 | PHYSICAL | 7 | 3,100.00 | $88.57 | ALTER SCHEMA `prd-core-data.dataset_demo_038` SET OPTIONS(default_time_travel_hours = 48); |
| dataset_demo_012 | PHYSICAL | 7 | 1,800.00 | $51.43 | ALTER SCHEMA `stg-core-data.dataset_demo_012` SET OPTIONS(default_time_travel_hours = 48); |
| dataset_demo_009 | LOGICAL | 7 | 900.00 | $0.00 | ALTER SCHEMA `dev-core-data.dataset_demo_009` SET OPTIONS(default_time_travel_hours = 48); |
| dataset_demo_044 | PHYSICAL | 7 | 2,500.00 | $71.43 | ALTER SCHEMA `prd-example-data.dataset_demo_044` SET OPTIONS(default_time_travel_hours = 48); |
| dataset_demo_027 | PHYSICAL | 7 | 1,400.00 | $40.00 | ALTER SCHEMA `stg-example-data.dataset_demo_027` SET OPTIONS(default_time_travel_hours = 48); |
| Table Prefix | Dataset | Shards | Physical (GiB) | Risk |
|---|---|---|---|---|
| events_ | dataset_demo_003 | 1825 | 8,400.00 | HIGH — Table Rebuild |
| ga_sessions_ | dataset_demo_038 | 730 | 3,200.00 | HIGH — Table Rebuild |
| user_activity_ | dataset_demo_012 | 365 | 1,950.00 | HIGH — Table Rebuild |
| clickstream_ | dataset_demo_044 | 9600 | 15,600.00 | HIGH — Table Rebuild |
| raw_imports_ | dataset_demo_009 | 180 | 540.00 | HIGH — Table Rebuild |
Sorted by deterministic score (descending). Score = (Impact + Risk) × Confidence × Effort × 5, capped at 100.
| Ref | Finding | Pillar | Lever | Score | Priority | Impact $/mo | % of Baseline | Conf. | Effort | Horizon |
|---|---|---|---|---|---|---|---|---|---|---|
| ID-11 | Storage TCO Optimization | Storage | Rate | 81 | ▲ Critical | $1.7K | 54% of storage | H | Low | M1 |
| ID-19 | Time-Travel Window Reduction Opportunity | Storage | Rate | 31 | ● Medium | $371.44 | 12% of storage | H | Low | M1 |
| ID-16 | Long-Term Storage Discount Forfeiture | Storage | Rate | 8 | ○ Info | $45.07 | 1% of storage | M | Medium | Q1 |
| ID-09 | Unpartitioned Tables | Storage | Usage | 6 | ○ Info | — | — | H | Low | Q1 |
| ID-10 | Stale / Orphan Tables | Storage | Waste | 6 | ○ Info | — | — | H | Low | M1 |
| ID-01 | Pricing Model Optimization | Pricing | Rate | 5 | ○ Info | — | — | H | Medium | M1 |
| ID-20 | Date-Sharded Tables → Partitioned Tables | Storage | Usage | 5 | ○ Info | — | — | H | Medium | Q1 |
| ID-05 | Batch-Eligible Workloads | Query | Usage | 5 | ○ Info | $35.94 | 0% of compute | M | Low | M1 |
| ID-03 | Micro-Query Batching | Query | Usage | 4 | ○ Info | $182.37 | 0% of compute | M | Medium | Q1 |
| ID-06 | DML Abuse Patterns | Query | Usage | 4 | ○ Info | — | — | M | Medium | Q1 |
| ID-08 | Materialized View Candidates | Query | Usage | 4 | ○ Info | — | — | M | Medium | Q1 |
| ID-13 | HBO Optimization Opportunities | Query | Usage | 4 | ○ Info | — | — | M | Medium | M1 |
| ID-17 | 10 MB Minimum Billing Floor Impact | Query | Usage | 4 | ○ Info | $152.34 | 0% of compute | M | Medium | Q1 |
| ID-18 | Time-Travel & Fail-Safe Overhead on Physical Billing | Storage | Rate | 3 | ○ Info | — | — | L | Low | M1 |
| ID-14 | Performance Resource Warnings | Query | Usage | 2 | ○ Info | — | — | L | Medium | Q1 |
| ID-07 | Slot Skew / Hot Spots | Query | Usage | 2 | ○ Info | — | — | L | High | Q1 |
| Finding | Lever | Priority | Est. Savings/mo | Conf. | Effort | Horizon |
|---|---|---|---|---|---|---|
| ID-11: Storage TCO Optimization | Rate | ▲ Critical | $1.7K | High | Low | M1 |
| ID-19: Time-Travel Window Reduction Opportunity | Rate | ● Medium | $371.44 | High | Low | M1 |
| ID-16: Long-Term Storage Discount Forfeiture | Rate | ○ Info | $45.07 | Medium | Medium | Q1 |
| ID-03: Micro-Query Batching † | Usage | ○ Info | $182.37 | Medium | Medium | Q1 |
| ID-17: 10 MB Minimum Billing Floor Impact † | Usage | ○ Info | $152.34 | Medium | Medium | Q1 |
| ID-05: Batch-Eligible Workloads | Usage | ○ Info | $35.94 | Medium | Low | M1 |
| Sum total (may overlap) | $2.5K |
LND_PLAN_CUR, TBL_SNAPSHOT_CUR, PREP_REFERRAL_CUR, ROLLUP_REFUND, TBL_CATEGORY_CURsvc-monitoring-probe@ops-sre.iam.gserviceaccount.com, svc-kafka-stream-loader@prd-ingestion.iam.gserviceaccount.com, svc-looker-dashboard@prd-bi-serving.iam.gserviceaccount.com, svc-datadog-metrics-probe@ops-monitoring.iam.gserviceaccount.com, svc-fivetran-loader@prd-raw-vault.iam.gserviceaccount.com| Ref | Check | Status |
|---|---|---|
| ID-02 | Capacity Ceiling Risk | ✅ Passed |
| ID-04 | SELECT * Anti-Patterns | ✅ Passed |
| ID-12 | Cost Guardrails Missing | ✅ Passed |
| ID-15 | Manual Backup Tables → Zero-Copy Snapshots | ✅ Passed |
max_bytes_billed on critical jobs.| Term | Definition |
|---|---|
| Slot | Unit of BigQuery compute capacity (~0.5 vCPU + RAM). Queries consume slots proportional to data scanned and complexity. |
| Slot-hour | 1 slot sustained for 1 hour. The billing unit for Editions pricing. |
| Bytes billed | Data scanned after partition/column pruning, rounded up to a 10 MB minimum per table referenced. |
| On-Demand | Pay-per-query at $6.25/TiB billed. No commitment; 2,000 concurrent slot cap per project. |
| Editions | Slot-based pricing. Enterprise: $0.06/slot-hr (PAYG), $0.048 (1yr), $0.036 (3yr). Standard: $0.04/slot-hr. Autoscale + baseline split. |
| Logical billing | Storage charged on uncompressed logical size. Default for new datasets. |
| Physical billing | Storage charged on compressed physical size + time-travel + fail-safe bytes. Often cheaper for compressed data. |
| Churn ratio | Fraction of table bytes rewritten per period via DML. High churn resets the 90-day long-term storage discount timer. |
Each finding is assigned a deterministic score using the formula:
Score = (Impact + Risk) × Confidence × Effort × 5, capped at 100
Priority bands: Critical ≥ 75, High ≥ 50, Medium ≥ 25, Low ≥ 10, Info < 10.
This assessment was generated by FinOps Optimizer v1.4.4.
All telemetry data was queried directly from BigQuery INFORMATION_SCHEMA views for project demo-sandbox in region region-us.
AI / LLM Usage: Vertex AI (Gemini) was utilized exclusively for the semantic query rewrites in Section 4 (AI Doctor). All other calculations, financial projections, rule-based heuristics, and scorecards were computed deterministically by local algorithms.
Not a Google Product: This tool is an independent, personal open-source project (Apache 2.0) and is not affiliated with, endorsed by, or supported by Google.
Cost Modeling & Verification: All costs and savings figures presented in this assessment are mathematical projections calculated using regional Google Cloud public list prices ($6.25/TiB on-demand, $0.06/slot-hour Editions baseline). They do not reflect enterprise contractual discounts, Custom Pricing Agreements (CPAs), or Committed Use Discounts (CUDs). Always verify findings against the Google Cloud Billing Console prior to making architectural or contractual commitments.
Execution & Safety: Provided "AS IS", without warranty of any kind. All recommended DDL queries, partition modifications, and table alterations should be thoroughly tested and validated in non-production environments first.