A checkbox would be fine if there were only two states: Confirmed Attending or not. This may be functionally true in some cases. For many applications, No Response is treated as the same as Confirmed Not Attending, especially if it’s after a certain deadline. However it sounds like you need to distinguish between Not Attending and No Response. Maybe your ...
Wording is key. For example, assuming at least one selection is required, instead of:
Select the applicable categories
Select one or more applicable categories
The original text has only the plural "categories" to indicate that "more than one is allowed", which is (a) easy to miss and (b) there are so many systems which get this wrong ...
Yes they are, also from an accessibility perspective.
If you need a larger target size, go with toggle buttons. It's also easier to arrange them in a horizontal space.
Checkboxes are more suitable for a vertical space and are a standard in forms.
If the list of options is short and consistent (not going to change based on another variable), they can be a nice choice aesthetically.
Some real estate search sites use this approach for defining what type of property you want. When successfully done, it is usually treated a bit differently than a list of toggles.
I would stick to using checkboxes. You can study the food ordering app as this is a common case. Example: 1) Choosing toppings for your pizza 2. Choosing different cake slices for a cake combo.
This is the approach taken from two food ordering apps:
Add a helper text beside Form Label (Select up to 2)
Even after user has clicked two options and ...
It's considered a dark pattern, but users are familiar with it.
Consider the pros and cons for your case: How much do newsletters affect your bottom line? What are the benefits for the user? How much engagement do they actually get? What is the opportunity cost?
Using the right input/control at the right place is always a challenge while designing forms. A checkbox control has three states: unselected, selected, and intermediate (where a list of sub-options is grouped under a parent option and sub-options are in both selected and unselected states).
In your case, I would stick with the checkboxes. Checkboxes are ...