Data type field limit

Hi,

Is there a field limit for the number of fields for a data type? I’m planning my app out and one of the data types will be at least 530 fields and then some. Why? Well, this particular data type will hold information from an intake form. The intake form is based on the US govt. immigration form and so these are pretty lengthy forms requesting a lot of information from the user. I’ve counted the form fields those turn out to be 530. I anticipate that in addition to the form fields, I’ll definitely be needing about 5-10 extra fields (if not more) for other meta information and such.

Before I go down this path, I wanted to make sure that Bubble would be able to handle a data type with these many fields.

Any insights/advice would be very appreciated.

Thank you.

Hi Sean,

There is a hard limit of 999 fields on a data type and we start issuing warnings at 990.

However, its important to note that even 530 fields on a data type is not a performant way to build your app. These should be broken out into different data types that represent sections of the form and can be combined into a joining data type that brings them all together.

Approaching this structure with multiple data types as opposed to one will certainly be the most performant and scalable way to build this application. I’d recommend keeping each data type to 100 fields or less purely for the purposes of organization. The performance implications of having a ton of fields are related to search operations - when we run a search, we need to return all of the fields of the records that are returned for that search. If you have hundreds of fields, it will make most searches of that data type incredibly inefficient.

3 Likes

Thanks, Sam. That was really helpful. Much appreciated. :slightly_smiling_face:

"when we run a search, we need to return all of the fields of the records that are returned for that search.

How challenging would it be for Bubble to allow advanced users to limit the fields returned by a search?

Example: If I have a table for “task” with 3 fields “name” “description” “due date” and I only use “name” and don’t want Bubble to return description and due date to keep the data call as slim as possible.

My thought is it would be “Do an Advanced Search for”
Screen Shot 2022-08-16 at 11.36.37 AM

Then within that, you’d have “Fields to Return” where you define which data fields will be returned by Bubble in this particular call (yes seems kinda like a privacy rule!!) along with the usual “Constraints”

Screen Shot 2022-08-16 at 11.42.22 AM

Screen Shot 2022-08-16 at 11.43.31 AM

Then once you do that, it limits the “each item [field]” – So you are ONLY pulling the fields of data you want.

This would be helpful for power users – And goes along the lines of recent “pro” updates such as caching. Give me more power to reduce the load on my app :slight_smile:

4 Likes

BUUUUUMP!