Last updated: March 18, 2026
What Are Table Groups?
A table group is a collection of related tables for a single platform. Each table group belongs to one platform (e.g., Meta Ads, Google Ads, Shopify), and each table in the group defines a specific dataset to sync, with its own metrics, dimensions, filters, and sync settings. Think of a table group as a schema definition: “For Meta Ads, I want these 4 tables with these specific fields.” When you create a transfer, you bind a table group to a destination and a schedule.Why Groups?
Table groups let you:- Reuse definitions: The same table group can be used by multiple transfers (e.g., sync the same tables for different accounts or to different destinations)
- Organize logically: Group related tables together (campaign metrics + ad metrics + audience breakdowns)
- Mix sync modes: When creating a transfer, you assign a sync mode to each table, so you can combine incremental daily metrics with full refresh settings data in one transfer
Creating a Table Group
- Go to Data Warehouse → Tables
- Click New Table Group
- Select the platform (e.g., Meta Ads, Google Analytics 4, Shopify)
- Choose your starting point:
Premade Presets
Detrics offers premade table groups with pre-configured metrics and dimensions for common use cases. Presets come in three tiers:
You can customize any premade group after creating it, add or remove tables and change fields.
From Scratch
Start with an empty group and build each table manually. Best when you know exactly which fields you need or when working with platforms where premade presets don’t cover your use case.Configuring Tables
Each table in a group maps to one BigQuery table. Here’s what you configure:Table Name
The name that will be used for the BigQuery table. Must be unique within the table group. Names are converted to snake_case automatically (e.g., “Campaign Performance” becomescampaign_performance).
If you set a table name prefix on the transfer (e.g., meta_ads_), the final BigQuery table name will be meta_ads_campaign_performance.
Metrics
Quantitative fields to include, the numbers you want to analyze. Examples:- Advertising: spend, impressions, clicks, conversions, ctr, cpc, cpm, roas
- E-commerce: gross_sales, order_count, average_order_value, refund_amount
- Analytics: sessions, total_users, new_users, bounce_rate, engagement_rate
- Email: email_opens, email_clicks, unsubscribes, revenue_per_recipient
Dimensions
Categorical fields that define the granularity of your data, how rows are grouped. Examples:- Common: campaign_name, ad_name, date, country, device
- E-commerce: product_title, product_type, order_status
- Analytics: source_medium, landing_page, page_path
Time Aggregation
How data is grouped over time:Incremental sync mode (assigned at the transfer level) requires Daily time aggregation. If you need weekly, monthly, hourly, or total aggregation, use Full Refresh or Full Append.
Historical Sync Range
How far back to fetch data on the initial sync. Options: 1 month, 3 months, 6 months, 12 months, 24 months, or all time.Filters
Optional conditions to narrow the data. For example:campaign_name CONTAINS "Brand": Only sync branded campaignsspend GREATER_THAN 0: Only sync rows with actual spendcountry EQUALS "US": Only sync US data
Filters can be combined with AND or OR logic. The regex operators accept full regular-expression syntax only on GA4 and Google Ads; everywhere else they match a plain
|-separated list of texts. See How Filters Work for details.
Data Preview
Before creating or saving a table, you can preview the data it will produce. Click Preview to fetch a sample of rows using the current configuration. This helps you verify that the right fields and filters are selected before running a full sync.Editing Tables After Creation
You can edit any table at any time. Before saving, Detrics shows a change preview that classifies each change and warns you about its impact. Nothing happens to your BigQuery data at the moment you save. Every change is applied on the next run of each transfer that uses the table, so you can edit a table as many times as you like between runs; only the configuration at the time of the next run matters. Here’s what happens for each type of change:What happens for each change
The exact behavior depends on the change and on the sync mode of the transfers using the table:Why it works this way
Detrics never deletes your warehouse data. BigQuery has no undo, so instead of dropping a column (which would destroy its history forever), Detrics renames your existing table to<table>_archive_<UTC timestamp>_vN and creates a fresh one under the original name. The archive keeps working for queries and is never deleted automatically; it stays in your destination, counting toward your BigQuery storage, until you delete it yourself.
Dimension changes re-download history because they change what each row represents. Rows at the old level of detail can’t mix with rows at the new one, so Detrics rebuilds the table and re-fetches the full historical range automatically.
Incremental Dedup refreshes a rolling window of daily rows (delete and reinsert). A non-daily aggregation would corrupt that window operation, which is why the change is blocked instead of silently accepted.
Configuration changes
These take effect on the next sync without any schema or data migration:- Changing filters: Applied on the next sync. For full data coherency with the new filters, run a historical resync manually.
- Changing sync mode: Takes effect on the next sync.
- Changing refresh window: Takes effect on the next sync.
- Changing historical sync range: Takes effect on the next resync.
- Changing platform-specific options: Applied on the next sync.
Duplicating and Copying
- Duplicate a table group: Creates a copy of the entire group with all its tables, useful for creating variations (e.g., same fields but different filters)
- Copy a table: Creates a copy of a single table within the same group or to a different group