diff --git a/includes/tmgmt.entity.inc b/includes/tmgmt.entity.inc
index 1fbf3c1..dfd2ddd 100644
--- a/includes/tmgmt.entity.inc
+++ b/includes/tmgmt.entity.inc
@@ -1010,7 +1010,18 @@ class TMGMTJob extends Entity {
     if (empty($target)) {
       $target = '?';
     }
-    return t('From @source to @target', array('@source' => $source, '@target' => $target));
+
+    $items = $this->getItems();
+
+    if (count($items) == 1) {
+      return t('@title (@source to @target)', array('@source' => $source, '@target' => $target, '@title' => reset($items)->getSourceLabel()));
+    }
+    elseif (count($items) > 1) {
+      return t('@title and @count more (@source to @target)', array('@source' => $source, '@target' => $target, '@count' => count($items), '@title' => reset($items)->getSourceLabel()));
+    }
+    else {
+      return t('From @source to @target', array('@source' => $source, '@target' => $target));
+    }
   }
 
   /**
diff --git a/ui/includes/tmgmt_ui.pages.inc b/ui/includes/tmgmt_ui.pages.inc
index 10c1ca0..60a14b3 100644
--- a/ui/includes/tmgmt_ui.pages.inc
+++ b/ui/includes/tmgmt_ui.pages.inc
@@ -236,8 +236,6 @@ function tmgmt_translator_form_submit($form, &$form_state) {
 function tmgmt_job_form($form, &$form_state, TMGMTJob $job, $op = 'edit') {
   // Get the job metadata wrapper so we can display the current status nicely.
   $wrapper = entity_metadata_wrapper('tmgmt_job', $job);
-  // Set the title of the page to the label and the current state of the job
-  drupal_set_title($job->label() . ' (' . $wrapper->state->label() . ')');
   // Check if the translator entity is completely new or not.
   $old = empty($job->is_new) && $op != 'clone';
   // Handle source language.
@@ -261,6 +259,9 @@ function tmgmt_job_form($form, &$form_state, TMGMTJob $job, $op = 'edit') {
     $job->target_language = key($available['target_language']);
   }
 
+  // Set the title of the page to the label and the current state of the job.
+  drupal_set_title($job->label() . ' (' . $wrapper->state->label() . ')');
+
   $form['info'] = array(
     '#type' => 'container',
     '#attributes' => array('class' => array('tmgmt-ui-job-info', 'clearfix')),
@@ -484,6 +485,10 @@ function tmgmt_job_form_submit($form, &$form_state) {
   // plain 'Submit' case covered. Also, if the translator fails it won't save on
   // its own.
   $job = entity_ui_form_submit_build_entity($form, $form_state);
+  // Make sure that we always store a label as it can be a slow operation to generate the default label.
+  if (empty($job->label)) {
+    $job->label = $job->label();
+  }
   $job->save();
   // Per default we want to redirect the user to the overview.
   $form_state['redirect'] = 'admin/config/regional/tmgmt';
