Override title with field label instead of key inside a views contextual filter
edit your Contextual Filter check Specify validation criteria in Validator check PHP code and enter following:

if ($argument == 'youth_competitive_program') {
  $handler-&gt;options['title'] = 'Youth Competitive Program';
  return true;
} else if ($argument == 'primary_competitive_programe') {
  $handler-&gt;options['title'] = 'Primary Competitive Program';
  return true;
}
return false;


there is another similar way:

if (!empty($argument)) {
  $handler-&gt;options['title'] = t($argument);
  return true;
}

return false;


and translate them, so if you add more option to your user_program fields, this code will work better.

but there is another option yet:

$field = field_info_field('field_user_program');
if (array_key_exists($argument, $field['settings']['allowed_values'])) {
  $handler-&gt;options['title'] = $field['settings']['allowed_values'][$argument];
  return true;
}
return false;


I will select the last way