diff --git a/.gitignore b/.gitignore
index 06f4e77..03beb09 100644
--- a/.gitignore
+++ b/.gitignore
@@ -71,3 +71,6 @@ env/
env.bak/
venv/
venv.bak/
+
+# Claude Code files
+CLAUDE.md
diff --git a/README.md b/README.md
index 4893596..6aa84c7 100644
--- a/README.md
+++ b/README.md
@@ -26,15 +26,27 @@
The following table provides a detailed list of all tables materialized within this package by default.
> TIP: See more details about these tables in the package's [dbt docs site](https://fivetran.github.io/dbt_linkedin/#!/overview?g_v=1&g_e=seeds).
-| **Table** | **Description** |
-| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
-| [linkedin_ads__account_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__account_report) | Each record represents the daily ad performance of each account. |
-| [linkedin_ads__campaign_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__campaign_report) | Each record represents the daily ad performance of each campaign. Linkedin campaigns map onto ad groups in other ad platforms. |
-| [linkedin_ads__monthly_campaign_country_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__monthly_campaign_country_report) | Each record represents the monthly performance of a campaign at the country level. |
-| [linkedin_ads__monthly_campaign_region_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__monthly_campaign_region_report) | Each record represents the monthly performance of a campaign at the region level. |
-| [linkedin_ads__campaign_group_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__campaign_group_report) | Each record represents the daily ad performance of each campaign group. Linkedin |
-| [linkedin_ads__creative_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__creative_report) | Each record represents the daily ad performance of each creative. |
-| [linkedin_ads__url_report](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__url_report) | Each record represents the daily ad performance of each url. |
+| **Table** | **Details** |
+|-----------|-------------|
+| [`linkedin_ads__account_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__account_report) | Represents daily performance aggregated at the account level, including `spend`, `clicks`, `impressions`, and `conversions`.
**Example Analytics Questions:**
- How does performance compare across different accounts by account manager?
- Are currency fluctuations affecting results across markets?
|
+| [`linkedin_ads__campaign_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__campaign_report) | Represents daily performance aggregated at the campaign level (equivalent to ad groups in other platforms), including `spend`, `clicks`, `impressions`, and `conversions`.
**Example Analytics Questions:**- Which campaigns have the strongest engagement relative to their budget?
- Do certain campaigns dominate impressions within a campaign group?
- Are new campaigns ramping up as expected after launch?
|
+| [`linkedin_ads__monthly_campaign_country_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__monthly_campaign_country_report) | Represents monthly performance aggregated at the campaign level by country, including `spend`, `clicks`, `impressions`, and `conversions`, enriched with geographic context.
**Example Analytics Questions:**- Which countries are delivering the highest return on ad spend for each campaign?
- Are there seasonal performance variations by geographic region?
|
+| [`linkedin_ads__monthly_campaign_region_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__monthly_campaign_region_report) | Represents monthly performance aggregated at the campaign level by region, including `spend`, `clicks`, `impressions`, and `conversions`, enriched with geographic context.
**Example Analytics Questions:**- Which regions are driving the most efficient campaign performance?
- How do regional performance trends correlate with local market conditions?
|
+| [`linkedin_ads__campaign_group_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__campaign_group_report) | Represents daily performance aggregated at the campaign group level (equivalent to campaigns in other platforms), including `spend`, `clicks`, `impressions`, and `conversions`.
**Example Analytics Questions:**- Which campaign groups are most efficient in terms of cost per conversion?
- Are paused or limited-status campaign groups still accruing impressions?
- How does performance vary by advertising channel type across campaign groups?
|
+| [`linkedin_ads__creative_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__creative_report) | Represents daily performance at the individual creative level (equivalent to ads in other platforms), including `spend`, `clicks`, `impressions`, and `conversions`.
**Example Analytics Questions:**- Which creative formats are driving the lowest cost per click?
- Do video creatives perform better than static image creatives?
- How do performance trends change after refreshing creative content?
|
+| [`linkedin_ads__url_report`](https://fivetran.github.io/dbt_linkedin/#!/model/model.linkedin.linkedin_ads__url_report) | Represents daily performance at the individual URL level, including `spend`, `clicks`, `impressions`, and `conversions`, enriched with creative context.
**Example Analytics Questions:**- Which landing pages are driving the highest conversion rates?
- Are certain URLs performing better with specific creative combinations?
|
+
+Many of the above reports are now configurable for [visualization via Streamlit](https://github.com/fivetran/streamlit_ad_reporting). Check out some [sample reports here](https://fivetran-ad-reporting.streamlit.app/ad_performance).
+
+### Example Visualizations
+
+Curious what these tables can do? The Linkedin models provide advertising performance data that can be visualized to track key metrics like spend, impressions, click-through rates, conversion rates, and return on ad spend across different campaign structures and time periods. Check out example visualizations in the [Fivetran Ad Reporting Streamlit App](https://fivetran-ad-reporting.streamlit.app/ad_performance), and see how you can use these tables in your own reporting. Below is a screenshot of an example dashboard; explore the app for more.
+
+
+
+
+
+
### Materialized Models
Each Quickstart transformation job run materializes 25 models if all components of this data model are enabled. This count includes all staging, intermediate, and final models materialized as `view`, `table`, or `incremental`.
diff --git a/images/streamlit_example.png b/images/streamlit_example.png
new file mode 100644
index 0000000..14913e9
Binary files /dev/null and b/images/streamlit_example.png differ