SharePoint multi-choice fields limited selected options (255 characters)

In SharePoint, when you create a column of type Choice and choose the option to allow selections of multiple values (checkboxes), there is a chance that you'll run into this message when adding or updating items that use that column: “This field can have no more than 255 characters.”

This happens when the total length of the accumulated text of the selected options surpasses 255 characters. SharePoint stores the values for this field in the database as a NVARCHAR(255) column, so it can never contain more than that.

It's a stupid and strange limitation and there should be a warning when a field of this type is created. This limit can be easily reached if you have a lot of options and/or if the options are verbose. When it happens it's a pain in the ass, because there is no easy way to circumvent this or easily change the field's type.

So, if you are creating a Choice field and you want the possibility for the user to select multiple values, be aware of this limitation and think really well if the options you have won't reach this limitation and that no more options will ever (ever) be needed.

How to overcome the 255 characters limitation

An alternative is to use a separate list for the options and a lookup field that points to that list and allows multiple values.

I found the limitation the hard way, with a project that was already live, so I had to follow these steps:

  • Create a new list for the options
  • Import all the options in the previous Choice field to this new list
  • Create a new lookup field allowing multiple selections and referencing the new list
  • For all the existing items that use the previous Choice field, set the selections for the lookup field by reading the values of the Choice field
  • Delete the old Choice column
  • Change the name of the new column to the same name as the old Choice column
  • Reorder fields and change list views to include the new column
  • Update all the web parts/controls/etc. that are referencing the old Choice column

If you choose to use a list and a lookup field right from the beginning, you avoid going through all these steps.

Nuno Freitas
Posted by Nuno Freitas on June 18, 2013

Related articles