This PR will address the following Issue/Feature: Adding conversion support
This PR will result in the following new package version:
Although no breaking changes are introduced, the PR is significantly robust enough to require a version bump.
Please provide the finalized CHANGELOG entry which details the relevant changes included in this PR:
Feature Updates: Conversion Support!
We have added more robust support for conversions in our data models by doing the following:
Adds a conversion_value_by_local_currency field to each _report end model, representing the value of conversions that occurred on each day for each campaign/campaign_group/creative/url/account.
Created a linkedin_ads__conversion_fields variable to pass through and transform additional conversion value metrics into their aggregate sums.
Set current variable defaults in the dbt_project.yml to bring in the most used conversion fields external_website_conversions and one_click_leads by default.
Adds a total_conversions metric in our end models to track all conversions being brought in by the linkedin_ads_conversion_fields variable.
Documentation Update
Documents how to set your own passthrough fields with the variable linkedin_ads__conversion_fieldsin the README.
Created a DECISIONLOG to describe best practices in configuring the linkedin_ads__conversion_fields variable.
Under the Hood
Added a new version of the persist_pass_through_columns()macro in which we can include coalesces and properly check between conversion field values and the existing passthrough column.
Updated the PR templates to align with our most up-to-date standards.
Included auto-releaser GitHub Actions workflow to automate future releases.
Addition of integrity and consistency validation tests within integration_tests for the Linkedin transformation models.
Updated linkedin_ad_analytics_by_creative_data seed file with relevant conversion fields for more robust testing.
PR Checklist
Basic Validation
Please acknowledge that you have successfully performed the following commands locally:
[x] dbt run –full-refresh && dbt test
[ ] dbt run (if incremental models are present) && dbt test
Before marking this PR as "ready for review" the following have been applied:
[NA] The appropriate issue has been linked, tagged, and properly assigned.
[x] All necessary documentation and version upgrades have been applied.
[x] docs were regenerated (unless this PR does not include any code or yml updates).
[x] BuildKite integration tests are passing.
[x] Detailed validation steps have been provided below.
Detailed Validation
Please share any and all of your validation steps:
PR Overview
This PR will address the following Issue/Feature: Adding conversion support
This PR will result in the following new package version:
Although no breaking changes are introduced, the PR is significantly robust enough to require a version bump.
Please provide the finalized CHANGELOG entry which details the relevant changes included in this PR:
Feature Updates: Conversion Support!
We have added more robust support for conversions in our data models by doing the following:
conversion_value_by_local_currency
field to each_report
end model, representing the value of conversions that occurred on each day for each campaign/campaign_group/creative/url/account.linkedin_ads__conversion_fields
variable to pass through and transform additional conversion value metrics into their aggregate sums.dbt_project.yml
to bring in the most used conversion fieldsexternal_website_conversions
andone_click_leads
by default.total_conversions
metric in our end models to track all conversions being brought in by thelinkedin_ads_conversion_fields
variable.Documentation Update
linkedin_ads__conversion_fields
in the README.linkedin_ads__conversion_fields
variable.Under the Hood
persist_pass_through_columns()
macro in which we can includecoalesces
and properly check between conversion field values and the existing passthrough column.integration_tests
for the Linkedin transformation models.linkedin_ad_analytics_by_creative_data
seed file with relevant conversion fields for more robust testing.PR Checklist
Basic Validation
Please acknowledge that you have successfully performed the following commands locally:
Before marking this PR as "ready for review" the following have been applied:
Detailed Validation
Please share any and all of your validation steps:
Validation tests passing! Mostly mirroring Jamie's validations in Facebook.
If you had to summarize this PR in an emoji, which would it be?
🥼