Skip to main content

I would like to price my app based on the number of users a monday account has. From what I can see in the documentation, seat-based pricing is likely the pricing strategy I should use.


What I haven’t been able to figure out is if a monday user is able to purchase a seat-based plan that is less than their account’s current users? For example, if an account has 20 users, can they purchase a 10-15 users plan, or does monday block them from doing this?

Monday, last I heard, locks it to the plan that encompasses their actual seat count.


The primary issue is there is no “seat” assignment model built into the apps framework. If an account buys 10 licenses there is no way to restrict to which 10 users can use the app. Anyone could still add recipes, or views - and they’d still work. You’d have to create an assignment mechanism yourself and police this yourself, blocking access you don’t want (maybe only licensed users can use the “write” features of the app, but non-licensed users get a view only capability).


Thanks for your reply!


I’m fine with there not being a seat assignment model built into monday. My main goal with seat-based pricing is to allow smaller companies to buy the app for less than larger ones, since smaller ones usually don’t have as big of a budget.


If monday does lock the number of seats to the plan that encompasses their actual seat count, that would be great. I wish there was a way to test this on a developer account to make sure that’s the case.


https://community.monday.com/t/some-seat-based-apps-no-longer-need-to-enforce-plan-seat-limits/60641/9?u=codyfrisch


Hmm, for some reason that link doesn’t work for me. It’s just leads to a Page Not Found error.


Hey @PluginGenie,


Try the link now 😁


Thanks, that link works now. It had great info about customers who’ve already purchased a seat-based plan in the past and need to upgrade it.


I didn’t see any info about new app purchases though. Is a customer able to purchase a new seat-based plan for an app that is less than the number seats their account currently has? @Matias.Monday Any chance you could shed some light on that?


Whoops I assumed you’d already been admitted to the super secret marketplace builders since you’re building for the marketplace.


Ah, I did not know there was private builders group. Glad I’m a part of it now though!


@anon29275264 the first rule about the super secret marketplace builders group is… 😆


Oh… yeah. Right. Well… I will just blame my other personality for that.


@Matias.Monday Not sure if you saw my last question:




I appreciate your help with this!


Hi Matias,


I don’t have access to that page either. Can you give me access?


Gilles


Hello there @PluginGenie,


I will check this with the team and let you know what they say!


Cheers,

Matias


Hello there @GCavin,


This is a group for marketplace developers.


Do you have an app in our apps marketplace? If so, which one/s?


Cheers,

Matias


Advanced Formula Booster.


AHHH sorry! look what I’ve started! Sorry!


Added you @GCavin !!


Hi @Matias.Monday


Can you please give me access to the page as well? I’m implementing monetization on our current app (Hourly Planner), but I’m not really clear on what logic I should implement regarding the seats.


If I want to implement the logic checking regarding the seats myself, what steps do we need to take? I couldn’t find the related information from monday.listen("context"...), If it depends on webhooks, I found that some webhooks return null for account_tier and account_max_users:



Could you please let me know the reason for this?


Thanks!


Br,

YarHuoy


This “null” you’re seeing means the account in question is a trial account. Trial accounts don’t have limits.


Yeah, there’s a big thread here from me learning this too:



Wow! This information is so useful for us to implement the logic check regarding the seats for monetization. I wish they could document it in detail somewhere.


Thanks for your sharing!


Hi @yarhuoy,


Here are the docs! Let us know if you have any other questions 🙂


Best,

Rachel


@Rachel like most of the docs those are incomplete. Almost no payloads are truly documented by monday anywhere. Monday may think they are defined but they are not to the degree any serious developer expects.


Truly documented would tell us if the value can be null or is an enum (or could be both as in the cases described here).


If its an enum (string but from a fixed set of possible strings) then the possible values for the enum should be defined along with the meaning of each of those values. The dev community has been asking proper payload schemas for several years to no avail. I have no expectation this situation will ever change though.


Hi @rachelatmonday thanks for your link, and I agree with @anon29275264. For example, the information that @dvdsmpsn provided in his thread is not documented anywhere.


May I know if it is possible for a non-trial account to get the following result when I execute the GraphQL?


GraphQL:


query { 
account {
plan {
max_users
period
tier
version
}
}
}

Result:


{
"data": {
"account": {
"plan": null
}
},
"account_id": xxxxxxx
}

Hello there @yarhuoy,


Only trial accounts should show that 😁


Reply