Conditional Formulas & Case in Single Select


Conditional Formulas seem not to work if a Single Select field is the condition when lowercase letters are used in that Single Select field. For example IF({Paid} = “paid”, “Yes”, “No”) doesnt work if Paid field consists of single select of paid or unpaid.

Whereas, if the Paid field consists of single select of Paid or Unpaid, the above formula works just fine.


You said the same when field is working and then not working :thinking:

You’re comparing strings so you have to enter the exact text. Anyway, could you use a Checkbox for Paid field? That would be easier.

IF(Paid, '✅', '❌')


The situation you describe doesn’t hold true for me; that is, in my experience with Airtable, the case of the select options must match the case of the string-to-match in the IF() statement. (The last sentence of your post suggests an option of ‘Paid’ would match the string ‘paid’ — which it will not.)


Thanks for responding. This is not an issue of matching exact text of strings. The issue is Conditional Formulas do not like lowercase Single Select fields.

W_Vann note that {Paid} is just the name of the field that contains single select of ‘paid’ or ‘unpaid’.

Elias: Yes there are several workarounds…But I am documenting the issue to help others avoid the pain. Or even better, bring attention to get the issue fixed.


I repeat: the case of the value of single-select option makes no difference in whether or not the conditional branch works as long as the match string used in the evaluation is of the same case.

That is to say, a single select field named {Paid} with options 'paid' and 'unpaid' evaluates correctly using this conditional formula:


However, when used with this conditional formula, the formula will always return ‘0’:


Note: I am using the web application. If you are using a mobile app, YMMV…


I don’t consider this an issue, neither my suggestion a workaround :sweat_smile:

The use case presented makes more sense to me with a Checkbox. If you have other statuses like “Delayed”, the Single Select is the way to go. Anyway, I think the behaviour of the IF function is correct, although I think to ignore the case would be a good idea. You can request it: