diff --git a/src/Controller/PluginRevisionController.php b/src/Controller/PluginRevisionController.php
index 9277599..7d05ba4 100644
--- a/src/Controller/PluginRevisionController.php
+++ b/src/Controller/PluginRevisionController.php
@@ -2,8 +2,11 @@
 
 namespace Drupal\diff\Controller;
 
+use Drupal\Component\Utility\Xss;
+use Drupal\Core\Entity\ContentEntityInterface;
 use Drupal\Core\Entity\EntityInterface;
 use Drupal\Core\Entity\EntityStorageInterface;
+use Drupal\Core\Entity\RevisionLogInterface;
 use Drupal\Core\Routing\RouteMatchInterface;
 use Drupal\Core\Url;
 use Drupal\diff\DiffLayoutManager;
@@ -120,6 +123,11 @@ class PluginRevisionController extends ControllerBase {
       '#title' => $this->t('Changes to %title', ['%title' => $entity->label()]),
     );
 
+    $build['summary'] = [
+      '#type' => 'markup',
+      '#markup' => $this->getRevisionDescription($entity, $left_revision, $right_revision),
+    ];
+
     // Build the layout filter.
     $build['diff_layout'] = [
       '#type' => 'item',
@@ -278,4 +286,50 @@ class PluginRevisionController extends ControllerBase {
     return Url::fromRoute($route_name, $route_parameters);
   }
 
-}
\ No newline at end of file
+  /**
+   * Gets the revision description of the revision.
+   *
+   * @param \Drupal\Core\Entity\ContentEntityInterface $entity
+   *   The entity to be compared.
+   * @param $previous_revision
+   *   The previous revision.
+   * @param $current_revision
+   *   The current revision.
+   *
+   * @return string
+   *   The revision log message.
+   */
+  protected function getRevisionDescription(ContentEntityInterface $entity, $previous_revision, $current_revision) {
+    if ($entity instanceof RevisionLogInterface) {
+      $revision_summary = Xss::filter($entity->getRevisionLogMessage());
+      if ($revision_summary == '') {
+        $revision_summary = $this->summary($previous_revision, $current_revision);
+      }
+    }
+    else {
+      $revision_summary = $this->summary($previous_revision, $current_revision);
+    }
+    return $revision_summary;
+  }
+
+  /**
+   * Creates an log message based on the changes of entity fields.
+   *
+   * @param $previous_revision
+   *   The previous revision.
+   * @param $current_revision
+   *   The current revision.
+   *
+   * @return string
+   *   The revision log message.
+   */
+  protected function summary($previous_revision, $current_revision) {
+    $summary = '';
+    foreach ($previous_revision as $key => $value) {
+      if ($previous_revision->get($key)->getValue() != $current_revision->get($key)->getValue()) {
+        $summary .= '<p>' . $value->getFieldDefinition()->getLabel() . '</p>';
+      }
+    }
+    return $summary;
+  }
+}
