Glad to help! Let us know if you have any more questions.
If you're using PostgreSQL the size is essentially unlimited. With MySQL it is 16 MB.
There are few exceptions to this rule where we may be using a 64 KB column if you're on MySQL.
I wouldn't recommend storing that much data however. If you're using Elasticsearch, the custom data on the User will be indexed, and Elasticsearch will eventually hit a limit as well.
You can experiment in the admin UI using the search field.
You can use the query string DSL or a full JSON query in the search field, if you are running elastic search.
Here's a link to building an ElasticSearch query (in version 6.3): https://www.elastic.co/guide/en/elasticsearch/reference/6.3/query-dsl-query-string-query.html
For example if you have companyName in custom data, the query string would be data.companyName:"Acme Corp."
If you are using the database search, you won't be able to use this kind of querying.
Here's more on the difference between the database search and elasticsearch options for user search: https://fusionauth.io/docs/v1/tech/core-concepts/users#user-search
If you use the advanced registration forms, you can edit user data now. This was recently released as a premium feature (requiring a paid license; more info here).
More info on setting up the user data editing screen: https://fusionauth.io/docs/v1/tech/guides/advanced-registration-forms/#editing-user-data-in-the-admin-ui