When you use append_hf, the new headers are only used for messages that are sent! Calling is_present_hf or a similar function will RETURN FALSE if you are looking for a header you added. append_hf("Test: Test\r\n"); is_present_hf("Test"); <--- This will return FALSE route { append_hf("Test: Test\r\n"); t_on_failure(2); } failure_route[1] { is_present_hf("Test"); <--- This will return FALSE } So this should not be used for storing any kind of state. This is mentioned only briefly in "known limitations" section.