The GitHub Marketplace, Explained From The Ground Up

The GitHub Marketplace, Explained From The Ground Up

Where GitHub Actions and GitHub Apps get discovered, installed, and — for the ones that choose to charge — sold, all without either side ever touching a separate payment system.

Picture a hardware store’s tool-rental aisle. You don’t need to own a specialized tile saw to use one for an afternoon — you walk in, find it on the shelf, check the rental price, and take it to the register, where the store itself handles the payment and the paperwork. You never deal with the tool manufacturer directly. The GitHub Marketplace works on almost exactly the same principle, except the “tools” are software: small pieces of automation called Actions, and fuller integrations called Apps, both built by other developers, discoverable in one place, and — when they cost money — billed straight through the account you already have on GitHub.

1What Is the GitHub Marketplace?

Before looking at how listings, pricing, or verification work, it helps to be precise about what actually lives in this “marketplace” and who it is for.

A single storefront for two different kinds of tool

The GitHub Marketplace is GitHub’s built-in storefront where developers and organizations can find, install, and — where applicable — pay for tools that extend how they use GitHub. It offers exactly two categories of listing: GitHub Actions, small reusable automation steps that plug into a repository’s workflows, and Apps (which includes both GitHub Apps and, historically, OAuth apps), which are fuller integrations that can connect to a repository or organization and interact with it through the GitHub API.

Simple Analogy

Think of Actions as recipe ingredients — a single step you drop into a larger workflow you are already building, like “run this linter” or “deploy to this cloud.” Apps, by contrast, are more like hiring an entire kitchen staff — a standalone service that plugs into your repository and does an ongoing job, like scanning every pull request for security issues or syncing issues to a project-management tool.

Who publishes to it, and who uses it

Anyone with a GitHub account can publish an Action to the Marketplace for free. Apps can be shared for free by anyone as well, but only apps owned by an organization — not a personal account — are allowed to charge money for them. On the consuming side, any developer browsing the Marketplace can search, filter by category, read a listing’s description and reviews, and install what they need directly into their own repositories or organizations.

i
Good to know

The Marketplace is not a separate GitHub product you have to sign up for — it is reachable at github.com/marketplace and uses the same account, billing method, and permissions system as the rest of GitHub.

2Why the Marketplace Matters

The Marketplace exists to solve two very different problems at once — one for the developers who build tools, and one for the developers who need them.

6900+
community-built Actions available in the Marketplace, and still growing
10
maximum pricing plans a single app listing can offer
14 days
standard length of a Marketplace free trial, when a listing offers one

For the developer who needs a tool

Instead of reading blog posts to find a security scanner, a deployment helper, or a project-management integration, a developer can search one catalog, compare options side by side, and install the winner directly — no separate account to create, no invoice to chase down, no code to copy and paste from a random repository of uncertain quality.

For the developer who builds a tool

Building a great Action or App is only half the work of turning it into something other people actually use — distribution and, for paid tools, billing are usually the other half. The Marketplace removes both burdens: listings are searchable by the exact audience most likely to want them, and GitHub’s own billing infrastructure handles subscriptions, invoices, and payment methods so the publisher never has to build a checkout page.

Independent developers and small teams

A solo maintainer can publish a genuinely useful Action for free, build a reputation through installs and stars, and later decide whether a paid tier for advanced features makes sense — without ever operating separate infrastructure to sell it.

Cloud and platform vendors

Large infrastructure providers publish official Actions so that deploying to their platform becomes a a few clicks inside a GitHub workflow, rather than something a developer has to script from scratch against a raw API.

3Architecture and Components

Zooming out, the Marketplace is best understood as four connected layers, each solving a different part of “publish, discover, install, get paid.”

Catalog

The listing catalog

The searchable, browsable directory of published Actions and Apps, organized by category, with descriptions, screenshots, and reviews that let a buyer evaluate a tool before installing it.

Identity

GitHub Apps and OAuth apps

The underlying integration mechanisms that give a listed App its actual permissions and capabilities inside a repository or organization once installed.

Trust layer

Publisher verification

A review process an organization completes to confirm its identity, unlocking the ability to sell paid plans and display a verified badge on its listings.

Money

The Marketplace billing API

GitHub’s own subscription and payment infrastructure, which handles purchases, upgrades, downgrades, cancellations, and free trials on behalf of every paid listing.

flowchart LR
    A[Developer builds an Action or App] --> B[Submit listing for review]
    B --> C{Requirements met?}
    C -->|Yes| D[Listing published to Marketplace catalog]
    C -->|No| B
    D --> E[Buyer discovers & installs]
    D --> F{Paid plan?}
    F -->|Yes| G[GitHub Marketplace billing API]
    F -->|No| E
    G --> H[Publisher receives purchase/cancel webhook events]
        
FIG 1 — How a listing moves from build to install, with billing as an optional branch

Two very different technical shapes behind one storefront

An Action is fundamentally a packaged, reusable workflow step, usually distributed as source code in a public repository that a workflow file simply references by name and version. An App, by contrast, is a running integration with its own webhook subscriptions, its own permission scopes, and often its own backend service that GitHub notifies whenever relevant events happen. The Marketplace deliberately unifies discovery for both, even though what happens after “install” is architecturally quite different underneath.

4Actions vs Apps: Two Kinds of Listing

Choosing which category to publish under — or, as a buyer, which category to reach for — comes down to understanding what each one is actually built to do.

AspectGitHub ActionsApps (GitHub Apps / OAuth apps)
What it isA single reusable step inside a workflowA standalone integration with its own permissions and event subscriptions
Who can publishAny GitHub account, personal or organizationAny account for free listings; only organizations may sell paid plans
How it’s installedReferenced by name and version inside a workflow fileInstalled onto a repository or organization through GitHub’s install flow
Verification badgeSome partner organizations are verified as trusted creatorsVerified publisher status required to sell paid plans or show a badge
Runs whereInside a GitHub Actions workflow runWherever the publisher’s own backend service runs
!
Common misconception

Publishing an Action to the Marketplace and publishing an App follow different processes with different requirements. Treating them as interchangeable during setup is one of the most common early mistakes a first-time publisher makes.

GitHub Apps vs OAuth apps, briefly

Within the “Apps” category, GitHub itself recommends building GitHub Apps over the older OAuth app model, because GitHub Apps offer far more granular, fine-grained permissions — an app can request access only to the specific resources it actually needs, rather than broader account-level scopes. Both can technically be listed in the Marketplace, but new integrations are steered strongly toward the GitHub App model.

5Publishing an Action to the Marketplace

Of the two listing types, publishing an Action is the more lightweight path, which is part of why so many exist.

1

Build the Action in a public repository

The Action’s logic and metadata live in a repository that describes what the Action does, what inputs it accepts, and how to run it.

2

Add the required metadata file

A structured metadata file describes the Action’s name, description, branding, and inputs and outputs, which is what the Marketplace listing page is generated from.

3

Publish a release

Cutting a tagged release of the repository is what triggers GitHub to offer the option to publish that release to the Marketplace.

4

Choose a category

Selecting an accurate category helps the right audience actually discover the Action when browsing or filtering the catalog.

5

Go live

Once published, the Action appears in the Marketplace catalog and can be referenced by name and version from any workflow on GitHub.

i
Verified creators

Anyone can publish an Action, but GitHub verifies certain partner organizations, whose listings then display a “verified creator” badge — a quick signal of trust for buyers browsing a crowded category.

6Publishing an App to the Marketplace

Publishing an App is a heavier process than publishing an Action, largely because an App can touch far more of a user’s data and, potentially, their money.

1

Build the app itself

The publisher builds a GitHub App or OAuth app, defining exactly which permissions and webhook events it needs to do its job.

2

Review it against listing requirements

Before submission, the publisher checks the app against GitHub’s security best-practice guidance and general requirements for listing an app, to avoid a rejected review.

3

Wire up billing webhook events

Even a free-only app must handle new-purchase and cancellation events from the Marketplace API, so the publisher’s backend always knows the current state of every installation.

4

Decide on pricing

The publisher chooses whether the listing will be free, paid, or offer both — a decision that determines whether publisher verification is required next.

5

Submit the listing for approval

GitHub reviews the submission against its requirements before the listing becomes publicly visible in the catalog.

!
Ownership matters

An app tied to a personal account cannot be sold. If a solo developer later wants to charge for an app that started life under their personal account, the app must first be transferred to an organization.

7Publisher Verification and Trust Signals

In a catalog anyone can publish to, trust signals matter enormously — and GitHub gates the most valuable ones behind an explicit process rather than handing them out automatically.

Free listings

General requirements only

Publishing an app or Action for free requires meeting the general listing requirements, but no financial or identity verification process.

Paid listings

Publisher verification required

Only apps owned by a verified organization can offer paid plans, unlocking both the ability to charge money and a visible marketplace badge on the listing.

Verified creators

Action-specific trust badge

For Actions specifically, GitHub verifies select partner organizations, whose Actions carry a distinct “verified creator” marker in search results.

Scale requirements

Minimum usage thresholds for paid apps

To be eligible for a paid plan, a GitHub App generally needs a minimum of 100 installations, and an OAuth app a minimum of 200 users — a floor meant to ensure paid listings have already demonstrated real-world adoption.

These layered requirements exist because the Marketplace’s usefulness depends entirely on buyers being able to trust what they see. A badge that anyone could obtain for free would be worthless as a signal; requiring identity verification and, for paid apps, a demonstrated user base keeps the signal meaningful.

8Pricing Plans and Billing

One of the Marketplace’s most distinctive features is that it acts as its own payment processor, meaning a publisher never has to build a checkout flow.

Free plans

  • Completely free for the user — no charge is ever possible on a free plan
  • Only general listing requirements apply, no verification needed
  • Still must handle purchase and cancellation webhook events
  • Common for open-source tools and lead-generation-style listings

Paid plans

  • Flat-rate pricing charges a fixed monthly or yearly fee
  • Per-unit pricing charges per whatever the publisher defines as a “unit” — a seat, a user, anything reasonable
  • Up to 10 distinct pricing plans allowed per listing
  • Prices are always set and processed in US dollars
  • Requires publisher verification and a financial onboarding step

Free trials

Any paid plan can optionally include a free trial, typically 14 days long, letting a buyer evaluate the paid tier before committing. A customer can only start one free trial per Marketplace product, preventing the obvious abuse of repeatedly resetting a trial period.

Why publishers still have to write some code

GitHub’s billing API removes the need to build payment infrastructure, but it does not remove all integration work. Every listing — free or paid — must handle Marketplace purchase events (new purchases and cancellations at minimum), and paid listings must additionally handle upgrades, downgrades, and free-trial events, so the publisher’s own system always reflects a customer’s current entitlement correctly.

i
Customer convenience

Because billing runs through GitHub, a customer purchasing a paid Marketplace app never has to leave GitHub or enter payment details a second time — the payment method already attached to their GitHub account is reused automatically.

9Discovery: How Buyers Find the Right Tool

A catalog with thousands of entries is only useful if the right entry is easy to find, so discovery mechanics matter as much as the listings themselves.

Search

Keyword search

A free-text search box lets a buyer type what they are trying to do — “deploy to Kubernetes,” “lint YAML” — and surfaces matching listings across both categories.

Filter

Category browsing

Listings are organized into categories, such as continuous integration, deployment, security, or project management, so buyers can browse rather than search when they aren’t sure exactly what to type.

Trust

Verified badges

Verified-creator and verified-publisher badges give a fast visual signal of legitimacy in a category that might otherwise contain dozens of similar-sounding options.

Social proof

Installs, stars, and reviews

Popularity signals and written reviews from other developers help a buyer judge quality before ever installing anything into their own repository.

10Security Considerations

Because installing an Action or App can mean handing a third party access to source code, secrets, or an entire organization, security sits at the center of how the Marketplace is designed.

Actions run with the permissions you grant them

When a workflow uses a third-party Action, that Action’s code runs inside the workflow with whatever permissions and secrets the workflow itself has access to. Because Actions are not automatically verified or scanned for safety just by being listed, treating an Action’s source and reputation with the same scrutiny as any other third-party dependency is essential.

Apps request explicit, scoped permissions

GitHub Apps must declare exactly which permissions they need — read access to issues, write access to pull requests, and so on — and a user or organization must explicitly approve that scope before installation completes. This is a large part of why GitHub steers publishers toward GitHub Apps over the broader, coarser-grained OAuth app model.

!
Buyer responsibility

A Marketplace listing being reviewed and published is not the same as GitHub vouching for the safety of every line of a third-party Action’s code. Reading the permissions an App requests, and checking an Action’s source and maintenance history, remains the installer’s own responsibility.

Security best practices for publishers

GitHub publishes dedicated security best-practice guidance for anyone building an app intended for the Marketplace, covering topics like storing credentials safely, validating webhook payloads, and minimizing requested permissions to only what the app genuinely needs to function.

11Advantages and Trade-offs

Weighing both sides — as a buyer and as a publisher — clarifies when the Marketplace is the right path and where its limits show up.

Advantages

  • One familiar account and payment method covers every purchase
  • Massive, active catalog spanning thousands of Actions alone
  • Verification badges give buyers a fast trust signal
  • Publishers get built-in billing without writing payment infrastructure
  • Free tiers make it easy to try a tool before committing to a paid plan

Disadvantages / Trade-offs

  • Not every listed Action is actively maintained or independently audited for safety
  • Paid app eligibility has real thresholds — publisher verification and minimum install counts — that new publishers must clear first
  • Apps and Actions follow different, non-interchangeable publishing paths
  • Publishers still must build and maintain webhook handling for billing events, even on free plans
  • Pricing is fixed in US dollars, which can complicate presentation for non-US customers

12Best Practices and Common Mistakes

Most friction — on both the buying and publishing side — comes down to a short list of predictable pitfalls.

For buyers: pin versions of installed Actions

Referencing an Action by a moving tag can silently pull in new, unreviewed code the next time a workflow runs. Pinning to a specific release or commit avoids surprises from an upstream change you never actually approved.

For buyers: review requested App permissions before approving

An App asking for far more access than its stated purpose requires is worth a second look before installation — the permission request itself is one of the clearest signals available.

For publishers: decide on pricing strategy early

Starting free and adding a paid plan later is fully supported, but it triggers a new verification and financial onboarding step — planning for that transition in advance avoids a scramble once demand for a paid tier appears.

For publishers: don’t skip billing event handling on a free listing

Even free-only apps must process new-purchase and cancellation events; skipping this leaves a publisher’s own records of installs and uninstalls silently out of sync with reality.

ANTI-PATTERN-01 Avoid
Problem

A team installs a low-star, unverified third-party Action directly into a production deployment workflow without reading its source, purely because its description matched what they needed.

Why It’s Harmful

Because the Action runs with the workflow’s own permissions and secrets, unreviewed third-party code sitting in a production pipeline is effectively an unaudited supply-chain dependency with access to sensitive credentials.

Correct Approach

Prefer verified creators or well-established, actively maintained Actions for anything touching production, pin to a specific version, and treat the review bar the same way you would for any other third-party dependency in your codebase.

13Real-World Examples

Seeing where the Marketplace shows up in everyday engineering work makes its abstract structure concrete.

Cloud deployment Actions

Major cloud providers publish official Actions to the Marketplace so that deploying an application to their platform — web apps, serverless functions, container services, managed databases — becomes a small, well-documented step inside an existing workflow rather than a custom script built from scratch against a raw API.

Third-party CI/CD and automation tooling

Tools for adding issues or pull requests to a project board, running linters, or generating changelogs are commonly distributed purely as free Marketplace Actions, since they cost the publisher nothing to give away and build goodwill and adoption for a broader product.

Security and code-quality apps

Many commercial code-scanning and code-review tools list themselves as GitHub Apps with paid tiers, letting an organization try the free tier on a small project before purchasing a paid plan that unlocks it across every repository, all billed the same way as any other GitHub expense.

Independent developers monetizing a niche tool

A solo maintainer who builds a genuinely useful, narrowly scoped App can grow it past the minimum installation threshold on a free tier, then transfer it to an organization, complete publisher verification, and introduce a paid plan — all without ever standing up their own billing system.

14Frequently Asked Questions

Q1Is the GitHub Marketplace a separate product I need to sign up for?

No. It is reachable at github.com/marketplace and uses the same GitHub account, permissions, and payment method you already have.

Q2Can I sell an app I built under my personal GitHub account?

Not directly. Only apps owned by an organization can offer paid plans, so a personal-account app must first be transferred to an organization before it can be sold.

Q3Does publishing a free Action or App require any special verification?

No. Free listings only need to meet the general listing requirements. Verification is required specifically to offer paid plans.

Q4What is the difference between a “verified creator” and a “verified publisher”?

Verified creator is a badge GitHub grants to select partner organizations for Actions specifically. Verified publisher is the broader identity-verification process an organization completes to unlock paid app plans and a marketplace badge.

Q5How many pricing plans can one app listing offer?

Up to ten different pricing plans, which can mix free, flat-rate, and per-unit options to serve different customer needs.

Q6Do I need to write payment-processing code to sell a paid app?

No. GitHub’s own billing infrastructure processes purchases, upgrades, downgrades, and cancellations. You do need to handle the corresponding webhook events so your own system stays in sync with each customer’s current plan.

15Summary and Key Takeaways

The GitHub Marketplace is a single, built-in storefront for two distinct kinds of tool — reusable Actions that plug into a workflow, and fuller Apps that integrate with a repository or organization directly — letting developers discover and install what they need without leaving GitHub, and letting publishers reach that same audience without building their own distribution or billing infrastructure. Free listings only need to meet general requirements, while selling a paid plan requires an organization to become a verified publisher, clear minimum usage thresholds, and integrate with GitHub’s Marketplace billing events. The result is a catalog that has grown to thousands of Actions and a healthy ecosystem of paid Apps, precisely because it removes friction on both the buying and the building side at once.

Key Takeaways

  • Two listing types exist, not one — Actions are reusable workflow steps; Apps are standalone integrations with their own permissions and webhooks.
  • Anyone can publish for free — but only an organization, not a personal account, is allowed to sell a paid app.
  • Billing runs entirely through GitHub — publishers integrate with the Marketplace API’s purchase events instead of building their own payment system.
  • Trust is layered — general requirements for free listings, publisher verification and minimum installs for paid ones, and a separate verified-creator badge specific to Actions.
  • Up to 10 pricing plans per listing, spanning free, flat-rate, and per-unit models, with optional 14-day free trials on paid plans.
  • Installing a third-party Action or App is a security decision, not just a convenience one — permissions, maintenance history, and version pinning all matter.
  • The two publishing paths are not interchangeable — an Action’s release-based flow and an App’s permission-and-billing-based flow require different preparation.