Skip to main content

Requirements for listing an app

Apps on GitHub Marketplace must meet the requirements outlined on this page before the listing can be published.

The requirements for listing an app on GitHub Marketplace vary according to whether you want to offer a free or a paid app.

Requirements for all GitHub Marketplace listings

All listings on GitHub Marketplace should be for tools that provide value to the GitHub Enterprise Cloud community. When you submit your listing for publication, you must read and accept the terms of the "GitHub Marketplace Developer Agreement."

User experience requirements for all apps

All listings should meet the following requirements, regardless of whether they are for a free or paid app.

  • Listings must not actively persuade users away from GitHub Enterprise Cloud.
  • Listings must include valid contact information for the publisher.
  • Listings must have a relevant description of the application.
  • Listings must specify a pricing plan.
  • Apps must provide value to customers and integrate with the platform in some way beyond authentication.
  • Apps must be publicly available in GitHub Marketplace and cannot be in beta or available by invite only.
  • Apps must have webhook events set up to notify the publisher of any plan changes or cancellations using the GitHub Marketplace API. For more information, see "Using the GitHub Marketplace API in your app."

For more information on providing a good customer experience, see "Customer experience best practices for apps."

Brand and listing requirements for all apps

To protect your customers, we recommend that you also follow security best practices. For more information, see "Security best practices for apps."

Considerations for free apps

GitHub Marketplace 鼓励使用免费应用程序,这是提供开源服务的好方法。 如果您在 GitHub Marketplace 的外部上架了应用程序的付费版本,则您在 GitHub Marketplace 中上架该应用程序时,必须提供至少一个付费计划。

Requirements for paid apps

To publish a paid plan for your app on GitHub Marketplace, your app must be owned by an organization that is a verified publisher. For more information about the verification process or transferring ownership of your app, see "Applying for publisher verification for your organization."

If your app is already published and you're a verified publisher, then you can publish a new paid plan from the pricing plan editor. For more information, see "Setting pricing plans for your listing."

To publish a paid app (or an app that offers a paid plan), you must also meet the following requirements:

  • GitHub Apps should have a minimum of 100 installations.
  • OAuth Apps should have a minimum of 200 users.
  • All paid apps must handle GitHub Marketplace purchase events for new purchases, upgrades, downgrades, cancellations, and free trials. For more information, see "Billing requirements for paid apps" below.

When you are ready to publish the app on GitHub Marketplace you must request verification for the app listing.

Note: 如果你想销售个人帐户拥有的应用,需要先将应用转移到组织,然后请求验证组织创建的列表。 For information on how to transfer an app to an organization, see: "Submitting your listing for publication."

Billing requirements for paid apps

Your app does not need to handle payments but does need to use GitHub Marketplace purchase events to manage new purchases, upgrades, downgrades, cancellations, and free trials. For information about how integrate these events into your app, see "Using the GitHub Marketplace API in your app."

Using GitHub's billing API allows customers to purchase an app without leaving GitHub and to pay for the service with the payment method already attached to their account on

  • Apps must support both monthly and annual billing for paid subscriptions purchases.
  • Listings may offer any combination of free and paid plans. Free plans are optional but encouraged. For more information, see "Setting a GitHub Marketplace listing's pricing plan."