Changelog

Follow up on the latest improvements and updates.

RSS

Overview
TikTok Shop order data can now be mapped into the UOS data model so it reports alongside the rest of your order data. This is for merchants who sell on TikTok Shop and do not fulfill those orders through Shopify.
What we changed
Added transform logic that maps TikTok Shop order data into UOS. Once enabled, TikTok Shop orders flow through the standard UOS order model and appear anywhere your ecommerce order data is surfaced — including the Order & Order Line Revenue and Transactional Sales Report explores, and well beyond them. Merchants who fulfill TikTok Shop orders through Shopify already have this data in UOS via their Shopify integration and are unaffected.
What to expect
This is not deployed out of the box. If you sell on TikTok Shop and those orders are not flowing through Shopify, this applies to you — contact your account manager or Support to let us know, and we'll add it to your workflow. If your TikTok Shop orders route through Shopify, they're already in UOS and nothing changes.
Overview
Shopify is rolling out its new Markets experience to all stores. Daasity now extracts Shopify Markets data as a standalone resource, making market and region data available to all Shopify merchants — previously this data was only extracted when B2B was enabled.
What we changed
Markets extraction no longer requires Shopify B2B. Market and market region data is extracted via Shopify's current GraphQL API into the
shopify_b2b.markets
and
shopify_b2b.market_regions
tables, using Shopify's non-deprecated Markets fields (including backup region support per Shopify's 2025-04 API changes).
What to expect
If your integration already had the required Shopify permissions, Markets extraction has been enabled automatically — no action is required.
If your integration was authorized before July 2026, you may need to re-authorize it to grant the
read_markets
permission and enable the Markets resource. You can do this in the edit menu of the integration screen in the Daasity app, then run a history load. See Shopify Integration Specifications for details.
Overview
Impact Radius has performance metrics — impressions, clicks, and other cost — that live only inside their reports rather than the standard API endpoints we already extract. Merchants who want those metrics flowing into Daasity for vendor performance reporting, cross-channel marketing analysis, or custom dashboards can now opt in to a new report extraction.
What we changed
Added opt-in extraction of the
adv_performance_by_ad_media_date
report from Impact Radius using their asynchronous ReportExport API. For enabled integrations, Daasity requests the report per campaign (via the
SUBAID
parameter) on a rolling 30-day window, polls until Impact Radius finishes generating it, then downloads the paginated results, transforms them, and loads them into your warehouse. Existing Impact Radius extraction is unaffected.
What to expect
No change for merchants not opted in. For merchants who want this enabled, contact support to turn it on — the new report data will populate alongside your existing Impact Radius tables and unlocks impressions, clicks, and other-cost metrics for ad-level performance analysis by partner and date.
Overview
The Google Ads Product Performance report has been restructured to correct a data accuracy issue at the original grain and to better align with how performance is attributed at the campaign + product level. In the same release, Google Ads admins can now choose which of the five Google Ads report types they want extracted, bringing the integration in line with our newer integrations.
What we changed
The previous
adwords.product_performance
table has been renamed to
adwords.bkp_product_performance
and preserved as-is. A new
adwords.campaign_product_performance
table replaces it at the corrected grain (campaign + product + date), with the
ad_group_id
,
ad_group_status
,
device
, and
ad_network_type
dimensions removed — those dimensions were the source of the duplication and inflation issues. The sync key has been simplified to
MD5(campaign_id:product_item_id:date)
. A three-year history load was kicked off for all active Google Ads integrations following release. Separately, the Google Ads integration edit page now exposes a resource picker where admins can select which of the five report types (ads,
Overview
Klaviyo can capture a wide range of custom metric events beyond standard email engagement — Back in Stock subscriptions, Loop Returns activity, Okendo events, Wonderment delivery events, and more — but historically those events weren't flowing into Daasity. We've added a self-serve way for merchants to select which additional Klaviyo metrics they want extracted, with a one-click historical backfill when new metrics are added.
What we changed
On the Klaviyo V2 integration edit page, merchants can now select additional metrics to extract alongside the standard email engagement events. Selected events flow into a new
klaviyo_v2.custom_events
table, with the
event_properties
field stored as a raw JSON blob to handle the arbitrary field shapes of custom metrics. When new metrics are added to the integration, a modal prompts the user to load historical data for all of them in a single click.
What to expect
Existing event extraction is unaffected — the standard email engagement events continue to flow into
klaviyo_v2.events
as before. To bring in custom events, edit your Klaviyo V2 integration, select the metrics you want, and confirm the backfill prompt. Custom events will populate the
klaviyo_v2.custom_events
table, where analysts can parse the JSON
event_properties
field downstream based on the specific metric. No action is required if you don't need custom event extraction.
Overview
Klaviyo's regular campaigns endpoint now supports push notification campaigns — a capability that didn't exist when our Klaviyo V2 integration was first built. We've extended the integration to extract push campaigns alongside email and SMS, with the same field coverage. The Klaviyo API has also been advanced to the 2026-01 version in the same release.
What we changed
The Klaviyo V2 extractor now pulls push campaign metadata into the campaigns table with the same attributes captured for email and SMS — closing a gap where push performance data was available in Summary Statistics but with fewer fields. The integration has also been moved to Klaviyo's 2026-01 API version.
What to expect
Push campaigns will appear in your Klaviyo V2 campaigns reporting alongside email and SMS once the capability is enabled on your account. Enablement is currently a manual step handled by a Daasity engineer — contact support if you'd like push extraction turned on. Existing email and SMS campaign extraction is unaffected by either change.
Overview
The free-text comment customers leave when initiating a return through Loop is now available in your warehouse. Previously this data was visible only inside Loop's UI — with this release it flows into Daasity for analysis alongside the rest of your returns data.
What we changed
We added the return_comment field to the loop_returns.return_lines table. The field captures the comment a customer submits at the return-line level — the qualitative "why" behind each returned item, in their own words.
What to expect
The new field will populate on the next workflow run and is immediately available for analysis — useful for surfacing common return reasons, flagging product quality issues, or feeding customer service follow-up workflows. Existing return metrics and tables are unaffected. No action is required — the update rolls out automatically.
Overview
Shopify is rolling out a platform-wide Markets update that becomes mandatory on April 1, 2026, and the market field on
companyLocations
is being deprecated as part of it. To keep market-level analytics intact for Shopify B2B merchants, we've added a dedicated Markets extraction so the data continues to flow once Shopify removes the field. This release applies to Shopify B2B merchants only.
What we changed
Market data is now extracted into two new tables in your warehouse:
shopify_b2b.markets
and
shopify_b2b.market_regions
. Analysts can join markets to company locations by country code (
shipping_address_country
market_regions.country_code
markets
). Each market also carries an
is_backup_region
flag, which replaces Shopify's deprecated "primary market" concept and gives analysts a defined fallback when a shipping address doesn't match any market region. The extraction uses Shopify's current, non-deprecated API path, and is now enabled by default for all Shopify B2B merchants, including Shopify Plus.
What to expect
Two new tables will populate on the next workflow run and be available for use in reporting. Your existing
company_locations
data is unaffected. No action is required — the update rolls out automatically.
Overview
Two base scripts were producing duplicate records on each refresh, affecting reporting accuracy. The first fix applies to BigQuery merchants using GA4 data. The second applies to all Snowflake and Redshift merchants, as well as BigQuery merchants with the Retail workflow enabled.
Issue
The GA4 shopping stage script had outdated logic that no longer matched its Snowflake/Redshift counterpart, generating duplicate rows on every refresh. Separately, the Omni time period mappings script had an incorrect configuration that caused records to multiply across daily refreshes on both BigQuery and Snowflake/Redshift.
Solution
The GA4 shopping stage script has been corrected to align with the current Snowflake/Redshift logic. The Omni time period mappings scripts have been corrected on both BigQuery and Snowflake/Redshift to eliminate the duplicate records.
What to expect
You may see slight adjustments in reports referencing GA4 shopping data or time period mappings as duplicates are removed — this is expected and reflects accurate data. BigQuery merchants may also see modest efficiency improvements in their workflow runs. No action is required — the update applies automatically.
Overview
When the same item on the same order had been returned more than once, our deduplication step could keep the wrong record if any return event came in from Loop without a timestamp. We've corrected the logic so the legitimate, most recent return is always retained.
Issue
For items returned more than once on the same order, Daasity uses a deduplication step to keep only the most recent return record. If one of those return events arrived from Loop without a timestamp populated, the timestamp-less record could incorrectly win the dedup and replace the legitimate, more recent record — leading to slightly inaccurate historical return metrics for those orders.
Solution
We corrected the deduplication logic so legitimate, timestamped records are always retained over records missing timestamps. Historical data recalculates automatically with the release on May 5th.
What to expect
If any of your returns fit the pattern — same item, same order, returned more than once, with at least one return missing a timestamp from Loop — your historical return metrics may shift slightly after May 5th. The updated numbers will be more accurate. If your Loop data is clean and timestamps are populated, you won't see any change.
No action is required — the update rolls out automatically.
Load More