)
WWDC25 AdAttributionKit updates: Multiple re-engagement conversions, attribution rules customization, and country codes
Apple’s Worldwide Developers Conference (WWDC25) took place on June 9, 2025, featuring updates across iOS (26, not 19!), software and technologies, and developer tooling. While most attention is placed on new consumer features announced during the opening Keynote, the Platforms State of the Union, which takes place a couple of hours later, along with additional sessions and videos, provide the most relevant information for mobile teams. These are the spaces where updates to AdAttributionKit and SKAdNetwork (SKAN) are typically shared.
As in past years, we’re focusing on the WWDC25 updates that impact attribution, analytics, and measurement—most importantly, the new AdAttributionKit features and functionality you should know about.
What’s new with AdAttributionKit and SKAN?
At last year’s WWDC, the mobile marketing industry was eagerly awaiting an update on SKAN 5, which had been teased at the 2023 event. Instead, Apple unveiled AdAttributionKit, an evolution (or continuation) of the SKAN attribution API with many of SKAN 4’s features, but expanded to include third-party and alternative app stores.
Over the 12 months since, we’ve seen a few additional updates, namely the inclusion of Apple Search Ads (ASA) into SKAN versions 1-3, with AdAttributionKit itself slated to start registering installs at a later date.
Updates to AdAttributionKit features and functionality were shared in a video session titled What’s new in AdAttributionKit, including the new end-to-end flow image below, and details that we explore here topic by topic.
)
Measurement of overlapping (re-engagement) conversion windows and conversion tags
Until iOS 18.3, apps could only have one active re-engagement conversion at any point in time. Starting with iOS 18.4, it’s possible to record multiple active re-engagements simultaneously. Via a new feature, apps can also receive conversion tags, described as being like bookmarks.
The use case Apple provided for these features looks like this: A customer sees an ad for a discount in an app, clicks the ad, is routed into the app via a deep link, and a re-engagement conversion is created. If they leave the app without purchasing the item and then see and click another ad for another product at a later time, this will create a new, separate re-engagement conversion.
But what if, during this session, they decide to purchase the product from the first ad click? Well, this would be an overlapping re-engagement case, and you can now update the conversion value for the original conversion with conversion tags.
)
Once developers have opted-in to measuring overlapping windows (setting the key to YES), conversion tags will be appended to the re-engagement URL that AdAttributionKit delivers to when a re-engagement occurs. These are universal links that are passed into APIs when an ad is displayed (custom or StoreKit rendered).
Read more about conversion tags and multiple re-engagements.
Customizable attribution rules
Attribution via AdAttributionKit is performed based on ad recency and ad type (click-through and view-through), and each of these comes with a set attribution window. If a conversion takes place within that attribution window, the relevant ad is eligible to receive credit. If it takes place outside of this window, it’s not eligible for attribution. These timers were previously set to 30 days for click-through ads and 1 day for view-through ads.
With the latest update, this period is now flexible and configurable, meaning advertisers can specify the window they want for each type and each ad network. So, for one ad network you might like to set a 2 day click-through window and a 1 day view-through window, but on another network it could be 20 days click-through and 5 days view-through. It’s also possible to set an ad type to be entirely ignored on a per-network basis, e.g. if you don’t want impressions to count for conversions you can switch them off. Note that this customization is only available for install ads, not re-engagements, because “re-engagement ad interactions and conversions happen right after each other with no time gap in between.”
After an ad network serves an ad and an ad-driven conversion takes place, the window for advertisers to measure user engagement (the conversion window/attribution window described above) opens. As these attributions can take place simultaneously for the same advertised app on the same device, with overlapping conversion windows, “a measurement might not get recorded to the most appropriate conversion.” This problem creates the need for the configurable cooldowns.
)
Take the example of a user clicking and downloading an app and completing an in-app purchase (IAP) later. This should result in a high user value measurement for the install ad, but if immediately after installing, the same user tapped on a re-engagement ad and opened the app, that IAP would be attributed to the re-engagement, which might not be the way an advertiser wants to measure and attribute conversions. This is preventable—or customizable—by setting a cooldown period.
)
)
The configurable attribution cooldown can be specified separately by the advertiser for clicks and impressions and will start after a conversion of that type takes place. All other conversions that take place before the cooldown window has come to a close will not be attributed.
Geography data available in postbacks
Postbacks, aka the outputs of AdAttributionKit that provide conversion information like attribution and engagement data, have—up until now—not provided any geography/location information. Networks and developers have relied upon source identifier to get some insight into this, but AdAttributionKit will now start providing country codes, if your campaigns hit a very high crowd anonymity tier.
These will be available for all apps downloaded via the App Store, with the code derived from the storefront where the app was downloaded and based on the location in a user’s Account Settings. For alternative app stores, country codes are an optional field in the install verification token payload, which is signed, sent to Apple, validated, and then populated in the postback.
Subject to the crowd anonymity algorithm, only very high-volume campaigns determined to be sufficiently anonymizing will deliver these country codes. As the requirement is so high, Apple has created an additional tier for country codes. The idea is to ensure that geography data is extremely privacy-conscious, without compromising on any data that advertisers and networks are accustomed to receiving. For example, if geography was folded into Tier 3, it could make receiving other Tier 3-level data less likely.
)
New testing functionality and best practices
Starting with iOS 18.4, developers can create development postbacks for apps from within the iOS Settings app. These postbacks can be tested in new ways and the process is largely simplified, including testing of updating conversion values if your app was run from Xcode or other distribution mechanisms. You can also directly control the data that these postbacks will contain, meaning you can test with different data granularities.
Read more about testing in developer mode.
Other noteworthy updates
The most significant additional updates include that Apple will switch to a year-based OS naming convention, meaning that instead of iOS 19, the next version we’ll see will be iOS 26. This will also be normalized across all platforms, e.g. visionOS 26 and iPadOS 26. Mac will continue with its location names but combine into the new numbering convention, starting with the upcoming macOS Tahoe 26.
Related to this is the new Liquid Glass design system, which will be standardized across all of the 26-series software platforms in a move toward more multi-channel development, which will also mark the first major visual update to the iOS operating system since iOS 13 in 2019. To assist developers in optimizing their apps for this environment (translucent look—based on visionOS), a new icon design tool (Icon Composer) will also be made available.
Xcode will also see some generative intelligence based updates, including predictive code completion improvements and natural language interaction capabilities for Swift Assist with built in chatGPT support.
For the latest information on AdAttributionKit, SKAN, Apple’s privacy updates, and broader shifts in the mobile ecosystem—and how these impact your marketing and campaign optimization—reach out to your Adjust representative or request a demo today.
Be the first to know. Subscribe for monthly app insights.
Keep reading