Plans and pricing

After creating your app, you must define the number of plans you want to offer, the difference between each tier, the type of price model they follow, and the price of each.

This guide will cover the available plan types, pricing your plans, and pricing versioning. You can also check out our pricing report for a deeper look into selecting plan types, pricing your plans, selecting plan tiers, and how to measure success.

Types of plans

Your app can support up to 10 feature- or seat-based plans, including one trial and one recommended plan. You can also create an optional free plan.

Feature or seat-based plans

Your plans can follow two different pricing models: feature-based and seat-based. Our apps framework UI intuitively displays pricing information in different formats based on your app's pricing model.

Feature-based

Feature-based pricing defines plan tiers based on the number of accessible features or usage. This model works well for apps offering multiple features or measuring usage. Customers can select their subscription level based on their desired functionality or consumption level, so they don't pay for anything they don't need! This provides them with flexible and customizable tiers to meet their needs and creates new opportunities to upsell. Still, it may create new challenges while determining how best to bundle your app features into tiers.

For example, an app can offer 5 features on the basic plan, 10 on the intermediate plan, 15 on the advanced plan, and 20 on the premium plan.

OR

An app can offer up to 50 actions on the basic plan, 100 on the intermediate plan, 250 on the advanced plan, and 500 on the premium plan.

Seat-based

Seat-based pricing allows you to create buckets that group users into different tiers based on the permitted number of seats. This model works best for apps focusing on one main capability instead of several features. It is simple, straightforward, and scalable for users, but it can also deter companies or organizations with more seats from subscribing.

Please note that it currently isn't possible to charge per seat due to the 10-plan maximum per app.

Seat count

When customers purchase a subscription to an app, our UI will intuitively recommend a plan based on the number of seats an account has across all monday.com products. The same calculation is used for accounts that start an app subscription while their monday.com account is in a trial period.

If an account expands or shrinks, we will automatically monitor user access by comparing account size to plan size for views, dashboard widgets, or custom objects. Users will be prompted to upgrade on the Installed Apps page and a pop-up in the app's view. Throughout this time, the user will still have access and can use the app.

For example, a monday.com account has 200 seats and creates an app subscription accordingly. When they upgrade their monday.com subscription to 300 seats, they will be prompted to upgrade in the UI.

If you have a different type of app or want to implement your own blocking mechanism, you can verify an account's size using the apps_monetization_info API (requires account:read scope).

query {
  apps_monetization_info {
    seats_count
  }
}

Trial and free plans

Trial plan

After deciding between feature- or seat-based plans, you can designate one tier as the trial plan.

Trial plans allow customers to see what your app is capable of and understand the value they can get from it before committing to a subscription. They help attract a wider audience, increase brand awareness, and ideally help increase the number of app subscriptions.

Your trial plan automatically lasts for 14 days - no more, or no less. If a customer requests a longer trial, you can manually extend their trial. App admins will receive a notification that they need to upgrade their plan once their trial period ends, and they will also be prompted to upgrade on the Installed Apps page. For view apps, customer access will be blocked in the app's view where they will also be prompted to upgrade.

Free plan

Free plans are optional but can be leveraged to attract more app users. With a free plan, users can experience parts of your app and explore its benefits without committing to a paid subscription. They also are a great way to retain trial users after their initial trial subscription ends.

Pricing

After defining the plan tiers, you should decide how much each level costs in USD. If you don't effectively price your plans, you may not make enough revenue to sustain development.

Part of defining your app's pricing involves deciding if your app will follow a monthly or annual billing schedule. If you choose the annual option, the fee must be a round number when divided by 12 because the monthly price is displayed in the marketplace. Let's say you want your annual price to be $75. That comes to $6.25/month and is not a round number. You would need to adjust your annual fee to $72, which comes to $6/month.

When you eventually monetize your app, you will need to submit the following details for each plan:

  • App plan ID: The string that will be sent to your backend as the plan_id (less than 255 characters).
  • Name: The plan title that the user will see in our marketplace.
  • Description: The plan tier description (less than 255 characters).
  • Bullet points for plan features: Three to five bullet points that list the tier's features. Use short sentences of up to ten words.
  • Monthly price: List the monthly price in USD using only whole numbers.
  • Yearly price: List the yearly price in USD using only whole numbers.

If you need to make changes to your plans or pricing after your initial submission, you can do so using pricing versioning.

Update your pricing

Pricing versioning allows you to change existing plan prices and add new plans by creating a new pricing version. The new prices and plans will appear in the marketplace just for brand-new users (those without an existing subscription) and users on free plans. Users with existing active subscriptions, including trial users, will not see the updated pricing.

You can follow these four steps to create a new pricing version:

  1. Choose the version ID based on the numbering pattern you wish to follow. You may decide to number the version IDs evenly (1, 2, 3, 4, etc.), or you can follow your own numbering pattern (1, 10, 20, 30, 40, etc.). If you don't provide an updated version ID, it will automatically default to the following consecutive number.
  2. Compile the updated plan pricing information. Ensure you include the new prices for each plan you want to update and explain the new plans you are adding.
  3. Submit the new pricing information using the plans and pricing form, and be sure to complete the Pricing Versioning field.
  4. That's it! After you submit the form, our review team will process your submission and update your plans accordingly.

The pricing version ID is only exposed to developers and is accessible through subscription webhooks. Therefore, users do not know when a new pricing version is created. If an existing user requires different plans or prices, they would need to cancel their current subscription and create a new one.

📘

Join our developer community!

We've created a community specifically for our devs where you can search through previous topics to find solutions, ask new questions, hear about new features and updates, and learn tips and tricks from other devs. Come join in on the fun! 😎