Steamworks Documentation
Demos
In Brief
Steam can host and distribute a demo version of your game that you can use to demonstrate part of your gaming experience.
Level of integration
Demos can range in size and scope, but generally are a small playable portion of your game that show some of the core mechanics and leave the player excited for more.

Overview

Steam has the ability to provide free demos for your customers so that they can try before they buy.

It's up to you whether or not a demo will be beneficial for your title, but there are a couple of useful things to consider:

  1. Quality – Customers are generally using the demo to make a purchase decision on your game. Make sure that what you put out there is high quality and measures up to the real experience.
  2. Timing – When you release your demo is also important. We generally recommend waiting until launch, but there are circumstances where putting a demo out prior to release is effective. If, for instance, you feel like customers need to touch the game to really understand it, then a quality demo prior to release can be useful.
  3. Length – You need to balance giving the customer enough content to get them excited, without giving away so much that they feel like they've experienced everything the game has to offer.

Technical configuration

Demos are a separate App ID that is associated with your full game's App ID. The demo will need to be configured with depots, and builds must be created just like a full app.

To create your demo App ID:

  1. From your base game's App Landing Page, click on "All associated packages, DLC, demos and tools."
  2. At the top of this page, click the "Add Demo" button.
  3. The demo you created has its own release checklist and configuration, similar to your base product.

To upload your demo build

Please see Uploading to Steam to get started with how to upload your demo build (make sure you use the App ID for your demo).

Minimizing upgrade impact

There are a few things you can do to minimize the friction to upgrade from the demo to the full game. Note that for these to work, the full game must already be released.
  1. Share depots with the full app: For any content that's shared between the full app and the demo, put it into its own depot and mount the shared depot from the base app into the demo app. See the Shared Content Depots documentation for more info.
  2. Share cloud storage with the full app: The saved game from the demo can be stored to the full game's cloud storage so that users can pick up where they left off in the demo once they buy the full game. See the Steam Cloud documentation for more info.

Demo store page & presence

DemoStorePg.jpg

As you are configuring your demo within Steamworks, you will need to set up a store presence with some graphical assets and written descriptions. During the creation of your store presence, you will be able to choose to configure an entire store page for your demo, or just provide some assets for your demo to appear on your base game's store page. Read on for more details on these two options.

Optional separate store page

When setting up your demo store presence, you can optionally choose to enable an entire separate store page for your demo, giving you space to more fully describe your demo.

A demo store page includes most of the same features as a normal game on Steam, including the following:
  • You can provide a detailed written description
  • You can list the features, languages, and player modes supported by your demo
  • Your demo will let players of the demo leave user reviews
  • Regardless of whether you create a separate store page or not, demos do not have their own community hub
  • Your demo will still also show as a button on your base game's store page
  • Steam will automatically include a prominent link from your demo store page back to your full game, making it easy for players to wishlist or purchase your game.

Separate store page requirements


If you choose to enable a separate demo store page, ensure that the content is specific to the demo and not the full game. The page should highlight only the features and experiences that customers will encounter in the demo. Here are a few specifics to consider:

  • Provide a detailed written description that clearly outlines the specific content of the demo.
  • List the features, languages, and player modes supported by your demo.
  • If certain features, languages, or player modes are supported in the base game but not in the demo, do not include them on your demo's store page.
  • Alternatively, clearly indicate that these elements are only available in the base game to avoid confusion.
  • Provide a trailer and at least five screenshots that are specific to your demo content.
  • Ensure that capsule images and Library Assets clearly indicate that the app is a demo to differentiate it from the base game.
  • Make sure your Content Survey accurately reflects the demo content.

Store presence release checklist

You will notice that there is a release checklist for "Store Presence", which will be longer if you choose to create a separate store page for your demo. Otherwise this is a much shorter store checklist than for your full game, and generally only requires a few assets and bits of information that may differ between your demo and full game.

Testing your demo

To work properly for customers, your application type must be set as 'Demo' and the App ID of your base game must be entered in the General Application Settings section of the Steamworks website for your demo.

Your primary developer account will automatically own both the demo and the base game, and you can test by simply launching your demo from the Steam Library.

If you wish to test your demo on a new account that is not a member of your Steamworks developer account, you'll need to request keys for your demo and activate them on the account you wish to test with.

Helping demo players find your full game

For players of your free demo, there are a couple of ways to help them find their way to your full game to add it to their wishlist or to purchase.

Add a link from your demo menu screen

You can direct customers to the full app from your demo by utilizing the Steam Overlay. The in-app overlay allows you to put a link to the store page right in your app. See the Steam Overlay documentation and ISteamFriends::ActivateGameOverlayToStore for more details.

Automatic link from Steam library

Players of your demo will also see a prominent link from the demo in their library to the full game's store page.

DemoUpsell.jpg

Using Achievements in Demos

We recommend that you disable achievements in demos. Instead, store the saved game in the shared Steam Cloud as described in the Cloud documentation. Then grant those achievements on loading the game in the full game after the user has purchased.

Releasing Your Demo

To prepare for release, please make sure to complete the checklists found on the right-hand side of the landing page for your demo. Once completed, you can mark your demo page and build as ready for review.

If you are releasing your demo prior to your base product being available, you will need to prepare your base game's store page and make sure it is visible as 'coming soon' so users can add the full game to their wishlist (also see: Steam Wishlists).

  • Releasing for 'upcoming' visibility (Optional)

    You can release your demo's store page presence ahead of the release of your demo in order to appear on the list of upcoming demos. This process is similar to putting up a 'coming soon' page for your base game; once you complete store page review, you will see a 'post coming soon' button appear at the top of your demo's app landing page in Steamworks.

  • Releasing directly to playable

    If you want to skip the 'upcoming' phase of your demo and simply release, then you can use the main 'Release Demo..." button that appears once your demo has been fully reviewed. Releasing your demo will automatically also publish your store page assets as well.


Once released, the demo can show up as new in the demo section. Clicking on the demo capsule in the store will take users to either the main game's store page where there's a demo button, or to your separate demo store page if you have configured one.

Please see the Release Process documentation for general information about preparing an app for release.

Triggering release notifications

Once you make your demo playable for the first time, you can trigger sending notifications (emails and mobile app notifications) to players who have the associated full game on their wishlist. This action is available on your demo app landing page for two weeks following the initial launch of your demo. You can only take this action once and you must do it within those first two weeks.

Disabling Your Demo

If you wish for your demo to only be available for a limited time, such as during a game conference or festival, you can deactivate and reactivate it once it has been released. Deactivating a demo will prevent players from downloading or launching your demo. Players that already have your demo in their library will continue to see the demo (so they may uninstall it) but cannot launch it again.

To Deactivate or re-activate a demo, find the option under 'Technical Tools' on your demo's app landing page and click "Deactivate Demo"

DemoDisable.jpg
Note: Once your demo is disabled, customers may still be able to launch it outside of Steam unless your demo requires Steam to launch and checks to see if the user has a current license to it. You can learn more here: ISteamApps::BIsSubscribedApp.

Demo visibility in the Steam store

Demos can appear anywhere in Steam that a free game could appear. This includes lists such as the "New & Trending" as well as lists within store hubs, tag pages, genre pages, and so forth.

Frequently Asked Questions

Q: Can I make a demo accessible on the full game's 'coming soon' page?
A: Yes, your demo can be made available to players on a Coming Soon page before the full game releases.

Q: Can my demo users play Steam multiplayer with my full game users?
A: Steam currently doesn't support multiplayer matchmaking between the full game and the demo.

Q: What if my demo consists of literally the same files as the full game?
A: If your full game is already released, then you can use a shared depot as described in the Shared Content Depots documentation. Do the following to make sure the demo and full app both work correctly.

  1. If you use Steam DRM, re-submit the exe for signing on the demo Steamworks app admin. Package the demo exe into a depot specific to the demo app. Alternatively, you can skip Steam DRM and just call SteamAPI_RestartAppIfNecessary.
  2. If there is behavior that is restricted to owners of the full app, gate it behind the ISteamApps::BIsSubscribedApp Steamworks API call with the App ID of the full app.

Q: How to get the Demo to show up on the base application's store page?
A: On the store page admin, go to the "Special Settings" tab and add the Demo's app ID in the "Associated Demos" section. Save & Publish. The demo will need to be released for it to show upon the base application's store page.

Q: How do I remove a Demo from the base application's store page?
A: On the store page admin for the base game, go to the "Special Settings" tab and remove the Demo's app ID in the "Associated Demos" section. Save & Publish. Note that this does not disable the demo, it just removes the visible button from your full game's store page.

Q: How do I remove a Demo entirely from the Steam store?
A: Please see Disabling Your Demo above

Q: Can I disable the store page for my demo?
A: Yes, if you no longer wish to have a stand-alone store page for your demo, then you can disable the store page on the 'basic info' tab within the 'edit store' section of Steamworks for your demo. The demo will then only be accessible via the full game's store page. Any links that lead to the previous demo's store page, will automatically redirect to the full game's store page.

Q: If I disable my demo and re-enable it later, can I still send wishlist notifications?
A: Wishlist notifications may only be triggered once, within 14 days of the demo releasing to players for the first time. This is the date that appears at the top of the right-hand column on your demo's app landing page.