April 2026 XBOX Game Development Kit (GDK) release notes
Introduction
Welcome to the April 2026 XBOX Game Development Kit with XBOX Extensions (GDKX) and the public GDK release. You can use the GDKX to develop games that can be certified and approved for release on Windows 11 PCs, Windows 10 PCs, XBOX One, and XBOX Series X|S consoles by using a shared codebase. For the GDK, you can develop games that can be certified and approved for release on Windows 11 PCs and Windows 10 PCs.
GDKX
- The April 2026 GDKX can be installed side-by-side with GDKXs from November 2019 and later.
- You can download GDKX releases from https://aka.ms/gdkdl.
- The release notes for all GDKX releases are at https://aka.ms/gdkreleasenotes.
GDK
- You can download GDK releases and view their release notes at https://aka.ms/gdk-winget.
About this document
We have organized this document into the following sections.
- What's new
- Release notes:
- Known issues
- Documentation
NOTE: Release notes have a number after their descriptions, such as [12345678]. For GDKX users, this number represents an internal ID that Microsoft uses to track the work and history relating to the item. This number can be useful to your developer account manager if you have questions about a particular release note.
What's new in the April 2026 XBOX Game Development Kit
- The GDKX and the GDK are released in two types: Major (focused on features, twice a year) and Updates (focused on fixes, as often as needed by partners).
- To view the full What's new section, see the online version of What's new.
- To view release notes for previous versions, for the GDKX, see release notes posts on the GDK forums. For the GDKX and the GDK, you can view the release notes in the online documentation at GDK release notes.
April 2026 GDK Update 3
Notifications
Publisher Content
PC and console games can now ship Publisher Content, a new package type that lets game publishers host and update content on their own CDNs while the platform continues to manage installation, background download, integrity, and the user experience.
Developers declare it in their
MicrosoftGame.config(via the newPublisherContentelement on the base game and thePublisherContentBaseProductfield on the content package) and produce the package with the corresponding newmakepkgparameters.Games can identify the kind of a package returned by existing GDK APIs using the new
XPackageGetPackageKind()API, which now reportsXPackageKind::PublisherContentin addition toGameandContent. [63082917]
PlayFab Party
Upgraded the Windows platform toolset used to build the library from v142 to v143. [63294760]
Issue fixes
Clang/LLVM
The Xbox Game OS umbrella library
xgameplatform.libhas been updated with the following Win32 APIs to support clang/LLVM's implementation of PGO instrumentation:FlushViewOfFile,VirtualUnlock.Developers using clang/LLVM's PGO need to also provide link aliases for some legacy POSIX APIs used by clang/LLVM's implementation to successfully link:
#pragma comment(linker, "/alternatename:fileno=_fileno") #pragma comment(linker, "/alternatename:getpid=_getpid") #pragma comment(linker, "/alternatename:strdup=_strdup")[62740693]
PlayFab Game Saves
Fixed minor telemetry reporting issues on Steam Deck where certain diagnostic fields were incorrectly populated during save operations. [62642608]
Disabled the conflict loser upload feature on Steam Deck to match Xbox/GRTS behavior. [62642612]
Fixed an issue where PlayFab Game Saves incorrectly handled missing registry keys, resulting in an initialization error. [62642607]
Social Manager
Fixed an issue where the Social Manager friends list could intermittently remain empty for an entire session (
XblSocialManagerDoWorkraised noLocalUserAddedevent) when the initial People Hub friends-list request never completed. The initial request is now recovered automatically, so the social graph populates without requiring a game restart. [63202269]
Fixed an issue where Social Manager returned an incorrect title name and rich presence text for a friend playing a title whose display name contains a hyphen, because the presence string was split on the first hyphen instead of the intended space-hyphen-space separator. [63202289]
PlayFab Party
Fixed audio-manipulation voice streams producing no buffers when the title hadn't yet configured an audio output. [63294702]
Fixed possible voice loss when transitioning between networks while audio manipulation is active. [63294760]
Fixed missing final speech-to-text transcription when an audio manipulation capture stream is active. [63294760]
Fixed a possible crash on shutdown when the process task queue was deleted before Party finished shutting down. [63294760]
Fixed a possible use-after-free where internal HTTP tracking objects could be deleted before the backing async task completed. [63294760]
Fixed a bug where PlayFab Party would fail to bind to its UDP multiplayer port in some PC environments with misconfigured WMI registries. [63251323]
Publisher Content
Fixed an internal bug in
XTaskQueueto prevent an infinite wait during teardown. [63190218]
MSIXVC2
MSIXVC2 creation now succeeds even if the Intelligent Delivery layout.xml has multiple features that use the same image file. [63117723]
MSIXVC2 pack command gracefully ignores the /maxencryptionfragments and /nogameos options (which have no effect on an MSIXVC2) to make it easier to drop into existing build pipelines. [63118134]
The MSIXVC2 pack command now correctly includes files from the source directory that are symbolic links. Previously it incorrectly treated these as 0 length files. [63118309]
April 2026 GDK Update 2
Notifications
Developer tools
The Direct3D 12 Desktop Game (Classic) template for Visual Studio 2019 no longer has ARM64 configurations. Support for targeting ARM64 with Visual Studio 2019 is deprecated. Visual Studio 2022 or later is required. [62468394]
Issue fixes
Input
The Direct3D 12 Desktop Game (Classic) template for Visual Studio 2019 no longer has ARM64 configurations. Support for targeting ARM64 with Visual Studio 2019 is deprecated. Visual Studio 2022 or later is required. [62468394]
Fixed an issue where a potential out-of-memory error occurred when calling
GameInputCreatein theNuGetversion ofGameInputon XBOX. [62353092]
Media
Fixed an issue that caused the H.264 decoder Media Foundation Transform (MFT) to stop responding during destruction when the decoder was created and destroyed without submitting input video samples. [62525251]
System
Fixed a issue in unsigned (local) MSIXVC2 packages that failed to install by using
wdapp.
[62386086]
April 2026 GDK Update 1
Notifications
XBOX Game Package Manager
Use the latest XBOX Game Package Manager (XGPM) UI release from GitHub when creating and uploading MSIXVC2 packages. This release includes multiple fixes. To download it, go to releases - Microsoft/PackageUploader.
Issue fixes
System
Fixed a memory leak in the
XGameActivationAcceptPendingInviteAPI. [61953160]
Fixed an issue where
XLaunchUrifailed with URIs longer than 21 characters. [62181431]
Fixed an issue in the
XGameInvite.handXGameProtocol.hGDK header files that could cause a C4768 compiler error. [62181564]
MSIXVC2
Fixed various component reliability and performance issues in the preview version of MSIXVC2. [62225080]
Developer tools
Fixed an issue where the MicrosoftGame.config Editor silently failed to save or create new files while reporting success. [62226865]
April 2026 GDK
Notifications
API deprecations
The
XGameActivationAPI has replaced theXGameProtocolandXGameInviteAPIs, providing a single API surface for all game activation scenarios. As a result,XGameProtocolandXGameInviteare now deprecated. Existing implementations will continue to function, but we recommend migrating toXGameActivationfor new development and future compatibility.The following APIs have been deprecated.
XGameProtocolRegisterForActivationXGameProtocolUnregisterForActivationXGameInviteRegisterForEventXGameInviteUnregisterForEventXGameInviteRegisterForPendingEventXGameInviteUnregisterForPendingEventXGameInviteAcceptPendingInviteFor more information, see XGameActivation.
[61232139]
Developer tools
Mainstream support for Visual Studio 2019 has expired. Extended support continues until April 2029. For more information about Visual Studio 2019 product lifecycle and servicing, see Visual Studio 2019 Product Lifecycle and Servicing.
Visual Studio 2019 and the v142 toolset compiler are out of mainstream support as of April 2024 and are only getting security servicing. Support for Visual Studio 2019 integration and use of the v142 platform toolset via Visual Studio 2022/Visual Studio 2026 will be removed in a future release of the GDK. This process will include the removal of the
Microsoft.Xbox.Services.142.GDK.C.liblibrary. For Visual Studio 2022 and Visual Studio 2026, we recommend moving toMicrosoft.Xbox.Services.143.GDK.C.lib, which was added in the April 2026 GDK.[61594513]
Address Sanitizer (ASAN) for XBOX is no longer supported on Visual Studio 2019. [60868415]
Screen captures can now be copied to the clipboard from the XBOX Manager Media Capture tab. [41667882]
PC command-line tools such as
wdcapture,wdcapturesession, andxblpcsandboxnow support direct bug feedback submission through the Feedback Hub app. [60250549]
Package Uploader now supports federated credentials. [60771527]
Microsoft Azure PlayFab
PlayFab Multiplayer has been updated to v1.9.0. For details, see PlayFab Multiplayer C++ SDK Release Notes - PlayFab | Microsoft Learn. [61288995]
Microsoft Azure PlayFab Party
PlayFab Party has been updated to v1.10.18. For details, see PlayFab Party Release Notes - PlayFab | Microsoft Learn. [61288995]
Issue Fixes
Fixed an issue that caused the language setting in a non-English command prompt to change to English after running GDK XBOX command-line tools such as xbapp.exe or xbconnect.exe. [59688191]
Fixed an issue where XBOX Game Package Manager didn't populate the UI with the last selected branch. [60771527]
Known issues
RESOLVED: makepkg2: /priorpackage doesn't generate a compare report for MSIXVC2 packages
Issue:
Inmakepkg2, using the/priorpackageflag when packing MSIXVC2 packages doesn't generate a compare report. Compare report generation isn't supported for MSIXVC2 packages in this release.Applies to:
- April 2026 GDK
Resolved:
This issue is resolved in the April 2026 GDK Update 1.Workaround:
None at this time.[61771743]
makepkg2: layout.xml requires DisplayName on all features
Issue:
Inmakepkg2, thelayout.xmlparser requires theDisplayNameattribute on all features, including hidden features where a display name isn't meaningful.Applies to:
- April 2026 GDK and April 2026 GDK Update 1
Workaround:
Add a placeholderDisplayNameattribute to any hidden features inlayout.xml.Status:
This issue will be fixed in a future GDK update.[61767246]
makepkg2: /contentid flag fails when ContentId is absent from MicrosoftGame.config
Issue:
Inmakepkg2, using the/contentidflag when noContentIdis specified inMicrosoftGame.configresults in the following error.
/contentid specified on the command line does not match the ContentId derived from the MicrosoftGame.config file.This behavior differs from
makepkg, which accepted the/contentidvalue directly in this scenario.Applies to:
- April 2026 GDK and April 2026 GDK Update 1
Workaround:
Use/contentidoverrideinstead of/contentid.Status:
This issue will be fixed in a future GDK update.[61767256]
MSIXVC2 packages can't be uploaded to Microsoft Partner Center via its web UI
Issue:
The upload of an.msixvcpackage to Partner Center fails if it was built by using the newmakepkg2tools.Applies to:
- Partner Center web UI
Workaround:
Use one of the following tools to upload MSIXVC2 packages to Partner Center.
makepkg2upload command:makepkg2 upload /d <content_directory> /branch "<BranchName>" /msixvc2XBOX Game Package Manager: Download the latest version from https://github.com/microsoft/PackageUploader.
Status:
Partner Center will be updated in the coming months to add support for web uploads of MSIXVC2 packages.
XboxPcTray.exe might block MSIXVC2 package uninstall or update
Issue:
XboxPcTray.exesometimes retains a handle to the game's Content folder, which can prevent uninstall or update operations from completing.Applies to:
- April 2026 GDK and April 2026 GDK Update 1
Workaround:
Close the XBOX PC Tray app before attempting to uninstall or update. To close it, right-click theXBOXPcTrayicon in the system tray, and then select Quit. You can also end theXboxPcTray.exeprocess in Task Manager.Status:
This issue will be fixed in a future GDK update.[61618609]
MSIXVC2 packages can't be uploaded via Package Uploader
Issue:
Uploading an.msixvcpackage to Partner Center via the Package Uploader command-line tool fails with a 400 (Bad Request) error if the package was built by using themakepkg2tool with the/msixvc2flag. Although MSIXVC and MSIXVC2 packages share the same.msixvcfile extension, MSIXVC2 packages use a different internal format that Package Uploader doesn't currently support.Applies to:
- Package Uploader CLI (PackageUploader.exe)
Workaround:
Use one of the following tools to upload MSIXVC2 packages.
- makepkg2 upload command:
makepkg2 upload /d <content_directory> /branch "<BranchName>" /msixvc2>- XBOX Game Package Manager: Download the latest version from https://github.com/microsoft/PackageUploader.
Status:
This issue will be addressed in a future release of Package Uploader.
MSIXVC2 packages in Partner Center appear as 1 byte in size in its UI
Issue:
Partner Center shows an incorrect size for uploaded MSIXVC2 packages. It shows 1 byte, regardless of the package's size.Applies to:
- Partner Center
Workaround:
None at this time.Status:
This issue will be fixed in a future GDK tools update.
Build With/Out Install (BWOI) MSBuild integration for Visual Studio 2026
Issue:
The Build With/Out Install (BWOI) MSBuild integration for Visual Studio 2026 differs slightly from previous releases. In the current releases of Visual Studio 2026, the BWOI implementation must "lock" to a specificVCTargetsPath. The result is that all projects are built with v145 or clang-cl, even if thePlatformToolsetvalues are set to v142 or v143. These older toolsets usually build correctly in standard Visual Studio scenarios.Applies to:
- April 2026 GDK and April 2026 GDK Update 1
Workaround:
For details about a workaround, see BWOIExample.Status:
The GDK team and the Visual Studio team are working to resolve this issue in a future Visual Studio release.[61855642]
Documentation
Offline documentation for the April 2026 release of the GDKX is installed on your development PC by the GDKX Setup program. After running Setup, the Help file for the GDKX (gdk.chm) is in C:\Program Files (x86)\Microsoft GDK\Documentation.
- The online GDKX and GDK documentation is at Game Development Kit (GDK) documentation.