Releases: fivetran/dbt_ad_reporting
v1.11.0 dbt_ad_reporting
Breaking Changes
LinkedIn Ads
- The
dbt_linkedin
dependency has been updated to[">=0.10.0", "<0.11.0"]
, and thedbt_linkedin_source
dependency has been updated to[">=0.10.0", "<0.11.0"]
. These upstream versions introduce breaking changes. For details, refer to the dbt_linkedin_source v0.10.0 and dbt_linkedin v0.10.0 release notes. (PR #120)- Added the
click_uri_type
field to the following models. This field allows users to differentiate which click uri type (text_ad
orspotlight
) was used to populate theclick_uri
field.stg_linkedin_ads__creative_history
linkedin_ads__creative_report
linkedin_ads__url_report
- Note: Only
text_ad
andspotlight
click URI types are supported. To request support for additional types, submit a Feature Request.
- The
click_uri
field now populates values using aCOALESCE
oftext_ad_landing_page
,spotlight_landing_page
, andclick_uri
. For details, refer to the dbt_linkedin_source v0.10.0 release notes. (PR #120)- This change aligns with the LinkedIn Ads API migration and Fivetran LinkedIn Ads connector update, which moved
click_uri
data totext_ad_landing_page
orspotlight_landing_page
based on creative type.
- This change aligns with the LinkedIn Ads API migration and Fivetran LinkedIn Ads connector update, which moved
- Added the
TikTok Ads
- The
dbt_tiktok_ads
dependency has been updated to[">=0.7.0", "<0.8.0"]
, and thedbt_tiktok_source
dependency has been updated to[">=0.7.0", "<0.8.0"]
. These upstream versions introduce breaking changes. For details, refer to the dbt_tiktok_ads_source v0.7.0 and dbt_tiktok_ads v0.7.0 release notes. (PR #127) - The
age
column in theADGROUP_HISTORY
table was renamed toage_groups
in the July 2023 TikTok update. (PR #127)- Previously, the
stg_tiktok_ads__ad_group_history
model coalescedage
andage_groups
to handle legacy data. Due to incompatible data types (string and JSON), this coalesced field has been removed in favor of solely theage_groups
column. - To populate historical data in the
age_groups
column, perform a resync of theADGROUP_HISTORY
table. TikTok provides all data regardless of the previous sync state. - For more details, see the Tiktok Ads DECISIONLOG.
- Previously, the
Documentation Changes
- Improved README structure by moving the Ad Reporting heading above the README tags and aligning it to the left. (PR #124)
Under the Hood
- Added consistency validation tests for the following models to enhance integration testing (used internally by Fivetran maintainers) (PR #127):
ad_reporting__ad_report
ad_reporting__url_report
Contributors
Full Changelog: v1.10.0...v1.11.0
v1.10.0 dbt_ad_reporting
PR #122 introduces the following BREAKING CHANGES:
Feature Updates: Native Conversion Support
- Added
conversions
andconversions_value
fields to each Ad Reporting end model.- BREAKING: In the event that you were already including conversions through passthrough variables and called your field(s)
conversions
and/orconversions_value
, your old fields will still be included, but they will be suffixed with a_c
, while the new default conversion fields will take precedence asconversions
andconversions_value
- For some platforms, conversions data is sent along with the type of event the metrics are attributed to (ie purchases, leads, sign ups). We have largely chosen to consider purchases, leads, and custom-defined events to be conversions. However, you may configure this at each individual platform level for the following packages:
- BREAKING: In the event that you were already including conversions through passthrough variables and called your field(s)
Platform | Variable | Default Values | How to Use |
---|---|---|---|
Facebook Ads | facebook_ads__conversion_action_types |
offsite_conversion.fb_pixel_custom + offsite_conversion.fb_pixel_lead + onsite_conversion.lead_grouped + offsite_conversion.fb_pixel_purchase + onsite_conversion.purchase |
Configuring Conversion Action Types |
LinkedIn Ad Analytics | linkedin_ads__conversion_fields |
external_website_conversions + one_click_leads |
Adding in Conversion Fields |
Reddit Ads | reddit_ads__conversion_event_types |
lead + purchase + custom |
Configure Conversion Event Types |
Snapchat Ads | snapchat_ads__conversion_fields |
conversion_purchases |
Configuring Conversion Fields |
Twitter Ads | twitter_ads__conversion_fields AND twitter_ads__conversion_sale_amount_fields |
conversion_purchases_metric + conversion_custom_metric AND conversion_purchases_sale_amount + conversion_custom_sale_amount |
Customizing Types of Conversions |
Under the Hood
- Created data validation tests to be used by package maintainers to verify this and future releases.
Contributors
Full Changelog: v1.9.0...v1.10.0
v1.9.0 dbt_ad_reporting
Under the Hood
- Addition of an blank line between the quoted line and the comment.
Under the Hood
- Addition of a section tag within the README so the model descriptions may be accessible within the Fivetran UI for Quickstart. (PR #113)
- Upticked the
google_ads
andlinkedin_ads
dependencies following major releases in both packages in which conversion metrics have been added. Refer to the individual package release notes for more details (Google Ads, Linkedin Ads). (PR #115)- Note: Default conversions have not been added to
ad_reporting
models yet, as we are rolling out conversion support to all upstream Ad packages first.
- Note: Default conversions have not been added to
Contributors
Full Changelog: v1.8.0...v1.9.0
v1.8.0 dbt_ad_reporting
PR #112 includes the following update:
Dependency Updates
- Tiny update which upticks the
microsoft_ads
dependency following a recent major release. Refer to the Microsoft Ads v0.8.0 release notes for what exact updates have been included.
Full Changelog: v1.7.1...v1.8.0
v1.7.1 dbt_ad_reporting
Bug Fixes
- Adjust the severity of the
account_id
test inad_reporting__account_report
towarn
. This is required since Snapchat can hard-delete records from the history tables, but not from the reporting tables. This ensures that accurate statistics are being reported and production pipelines aren't failing (PR #110).- Documents the above decision in the DECISIONLOG.md.
Under the Hood
- Updated the pull request templates (PR #110).
- Included auto-releaser GitHub Actions workflow to automate future releases (PR #110).
Contributors
Full Changelog: v1.7.0...v1.7.1
v1.7.0 dbt_ad_reporting
PR #103 includes the following update.
Breaking changes
-
Identifiers for the following packages have been updated for consistency with the source name and compatibility with the union schema feature. See the package's changelog for a full list of changes.
-
Linkedin ads updates:
- Updated materializations of dbt_linkedin non-
tmp
staging models from views to tables. This is to bring the materializations into alignment with other ad reporting packages and eliminate errors in Redshift. - Updated the name of the source created by
dbt_linkedin_source
fromlinkedin
tolinkedin_ads
. This was to bring the naming used in this package in alignment with our other ad packages and for compatibility with the union schema feature. If you are using this source, you will need to update the name.
- Updated materializations of dbt_linkedin non-
Feature update 🎉
- Unioning capability! This adds the ability to union source data from multiple ad reporting connectors. Refer to the Union Multiple Connectors README section for more details.
Full Changelog: v1.6.1...v1.7.0
v1.6.1 dbt_ad_reporting
Updates
- Renames the semantic model from
ad_reporting__ad_report
-->ad_report
in order to avoid the dunder(__) keyword. (PR #105)
Contributors
Full Changelog: v1.6.0...v1.6.1
v1.6.0 dbt_ad_reporting
PR #100 includes the following updates:
🚨 New dbt-core version requirement 🚨
- Updated the metrics spec to reflect the new spec in dbt-core 1.6.0. As a result, the new required dbt version is
[">=1.6.0", "<2.0.0"]
. Be sure to upgrade your dbt-core version when upgrading this package to avoid dbt version compatibility errors.
Feature Updates
- Added
ad_reporting__ad_report.yml
semantic model which is required to define metrics. - Included
metricflow_time_spine.sql
which is required by Metricflow. This will be deprecated in future releases. If you have already created ametricflow_time_spine.sql
model in your project, you will need to disable it for this package by setting the variablead_reporting__metricflow_time_spine_enabled
tofalse
in your project.
## root dbt_project.yml
vars:
ad_reporting__metricflow_time_spine_enabled: false ## true by default
Under the Hood
- Added a new variable
dbt_date:time_zone
which is used by thedbt_date.get_base_dates
macro within themetricflow_time_spine
model. This variable is nested under thead_reporting
hierarchy in the variables config and should not affect any global declarations if you leverage thedbt_date
package in your own environment.- The default value of this variable is
America/Los_Angeles
, but you may be able override this in your own root project.
- The default value of this variable is
## root dbt_project.yml
vars:
"dbt_date:time_zone": "America/Chicago" # Default is "America/Los_Angeles"
Documentation
- Please be aware that due to a bug in dbt-core v1.6.0 the docs were not regenerated as part of this release. You can expect a new release in the future with the regenerated docs that contain these updates.
Contributors
Full Changelog: v1.5.0...v1.6.0
v1.5.0 dbt_ad_reporting
🚨 Breaking Changes 🚨
PR #98 includes the following changes based on the underlying individual package upgrades:
- Amazon Ads dependency upgraded to v0.2.0. Please see the respective upstream Amazon Ads and Amazon Ads Source releases for more details.
- Pinterest Ads dependency upgraded to v0.9.0. Please see the respective upstream Pinterest Ads and Pinterest Ads Source releases for more details.
- Tiktok Ads dependency upgraded to v0.4.0. Please see the respective upstream Tiktok Ads and Tiktok Ads Source
Bug Fixes
- Adding the correct variable name in
ad_reporting__url_report
for passthrough metrics. (PR #96)
Contributors
Full Changelog: v1.4.0...v1.5.0
v1.4.0 dbt_ad_reporting
🎉 Feature Enhancement 🎉
- Added
ad_reporting__<report>_passthrough_metrics
variables to easily add common metrics across all platforms into thead_reporting
models! This allows metrics other than the standardclicks
,impressions
, andcost
to be included in the final ad reporting models. See below for a full list of new variables and example metrics to passthrough. (PR #85)- It is important to call out that this is only possible if the relevant upstream Ad platform variables have the same metric to be unioned in the roll up model. Please see the README section for details around how to configure the passthrough metrics.
- Please ensure you exercised due diligence when adding metrics to these models. The metrics added by default (
clicks
,impressions
, andcost
) have been vetted by the Fivetran team maintaining this package for accuracy. There are metrics included within the source reports, for example metric averages, which may be inaccurately represented at the grain for reports created in this package. You will want to ensure whichever metrics you pass through are indeed appropriate to aggregate at the respective reporting levels provided in this package.
vars:
ad_reporting__account_passthrough_metrics:
- name: conversions
- name: view_through_conversions
ad_reporting__campaign_passthrough_metrics:
- name: total_shares
- name: conversions
ad_reporting__ad_group_passthrough_metrics:
- name: conversions
- name: interactions
ad_reporting__ad_passthrough_metrics: ## For both Ad and URL reports
- name: conversions
- name: video_views_captured
ad_reporting__keyword_passthrough_metrics:
- name: interactions
ad_reporting__search_passthrough_metrics:
- name: conversions
- name: local_spend_amount
- Addition of the
pinterest__using_keywords
(default=true
) variable that allows users to disable the relevant keyword reports in the downstream Pinterest models if they are not used. (PR #89)
Under the Hood:
- Incorporated the new
fivetran_utils.drop_schemas_automation
macro into the end of each Buildkite integration test job. (PR #86) - Updated the pull request templates. (PR #86)
Contributors
Full Changelog: v1.3.1...v1.4.0