now I am beginning to understand.
When using update_field() for a field that does not have a value yet you must use the field key and not the field name. See the section on using field keys in the documentation for an explanation. https://www.advancedcustomfields.com/resources/update_field/