Advice on Options Sets


I have a question on the use of option sets vs. a thing (db).

I am running into a management issue e.g. the list of options in a given option set becomes so unwieldy that it becomes difficult to actually manage.

My example, my app has a thing called Team. During the date entry process there are a number of attributes specific to a team can the user can select via dropdown. These choices all use options sets.

So for each team a user would be required to select the following:

Governing Body
Age Group

As the user descends, each choice filters the one below. Using the first four option sets are reasonably straightforward as there is a reasonable manageable list of options.

Division is problematic as there are multiple Divisions per age group, different Division names based on Governing Body and different Divisions for each Sport. Though this list will be static, I can imagine this list growing to 500+ items if not 1000. the thought of editing such an option set through the bubble editor is making my head hurt.

So my questions are these:

  1. is there way to modify options sets by building my own UI in Bubble. I am pretty sure the answer is no, but I as wondering if anyone might know if a plugin or some other work around.

  2. if the answer to the above is “no”, what are the disadvantages of creating Divisions as thing instead of an option set. Is there a significant performance hit or something else I should be considering.

Thanks for any assistance.


  1. [New Extension] Bulk import from CSV file for Option Set

  2. I wouldn’t be concerned about storing these as a Data Type from a performance standpoint. Option Sets will be quicker because they are static but I would seriously consider using a Data Type (and not #1) given the scenario you described above.

As a general rule, if the User Creates it, it should be a Thing. If it is Static and sifted through, then Option Set is a viable option. Option Sets are faster but with using so many, I could definitely see it getting unwieldy. Have you tried making it elsewhere, and then updating it via CSV? In some of my projects, I actually make an area specifically for Data Entry, for after the initial setup. That way if I need to add a couple, no big deal. 100’s of them, would be time consuming

1 Like

Thanks for the feedback. This is very helpful. I might try the csv import just to see how that works.

But it is good to know that there probably wont be much of a performance hit by using the db instead of an option set.

My specific issue probably wouldn’t be an issue if the option editor had a better UI. Having a means to sort and filter and easily view the option set data would be immensely useful. As it stands even with a relatively small option set it can be difficult to find the data that needs to be modified.

Using a spreadsheet editor and uploading a CSV will help a lot. The other option, this is what I frequently do if the data is not massive, is just make an admin area that does not normally load (for performance reasons) until accessed. Then add in a repeating group for the data to display. Add some filter options, and some input for new data. Then you can use autobinding inside of the repeating group if you don’t go the pop-up display editor route. Just remember, autobinding gives errors based on the privacy settings.