diff --git a/src/Entity/FixedBlockContent.php b/src/Entity/FixedBlockContent.php
index 9971f41..9ff38c0 100644
--- a/src/Entity/FixedBlockContent.php
+++ b/src/Entity/FixedBlockContent.php
@@ -24,7 +24,7 @@ use Drupal\block_content\BlockContentInterface;
  *     "form" = {
  *       "add" = "Drupal\fixed_block_content\Form\FixedBlockContentForm",
  *       "edit" = "Drupal\fixed_block_content\Form\FixedBlockContentForm",
- *       "delete" = "Drupal\Core\Entity\EntityDeleteForm",
+ *       "delete" = "Drupal\fixed_block_content\Form\FixedBlockContentDeleteForm",
  *       "export" = "Drupal\fixed_block_content\Form\ExportConfirmForm",
  *       "import" = "Drupal\fixed_block_content\Form\ImportConfirmForm"
  *     }
diff --git a/src/Form/FixedBlockContentDeleteForm.php b/src/Form/FixedBlockContentDeleteForm.php
new file mode 100644
index 0000000..1beffac
--- /dev/null
+++ b/src/Form/FixedBlockContentDeleteForm.php
@@ -0,0 +1,81 @@
+<?php
+
+namespace Drupal\fixed_block_content\Form;
+
+use Drupal\Core\Config\ConfigManagerInterface;
+use Drupal\Core\Entity\EntityConfirmFormBase;
+use Drupal\Core\Entity\EntityDeleteFormTrait;
+use Drupal\Core\Form\FormStateInterface;
+use Symfony\Component\DependencyInjection\ContainerInterface;
+
+/**
+ * Fixed block content entity deletion form.
+ */
+class FixedBlockContentDeleteForm extends EntityConfirmFormBase {
+
+  use EntityDeleteFormTrait {
+    submitForm as traitSubmitForm;
+  }
+
+  /**
+   * The config manager.
+   *
+   * @var \Drupal\Core\Config\ConfigManagerInterface
+   */
+  protected $configManager;
+
+  /**
+   * FixedBlockContentDeleteForm constructor.
+   *
+   * @param \Drupal\Core\Config\ConfigManagerInterface $config_manager
+   *   The config manager.
+   */
+  public function __construct(ConfigManagerInterface $config_manager) {
+    $this->configManager = $config_manager;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public static function create(ContainerInterface $container) {
+    return new static(
+      $container->get('config.manager')
+    );
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function buildForm(array $form, FormStateInterface $form_state) {
+    $form = parent::buildForm($form, $form_state);
+    /** @var \Drupal\fixed_block_content\FixedBlockContentInterface $entity */
+    $entity = $this->getEntity();
+    $this->addDependencyListsToForm($form, $entity->getConfigDependencyKey(), [$entity->getConfigDependencyName()], $this->configManager, $this->entityManager);
+
+    // Option to delete the linked block.
+    if ($block_content = $entity->getBlockContent(FALSE)) {
+      $form['delete_linked_block'] = [
+        '#type' => 'checkbox',
+        '#title' => $this->t('Delete the linked custom block as well'),
+        '#description' => $this->t('Check to delete the custom block %title (@id).', ['%title' => $block_content->label(), '@id' => $block_content->id()]),
+        '#default_value' => FALSE,
+      ];
+    }
+
+    return $form;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function submitForm(array &$form, FormStateInterface $form_state) {
+    $this->traitSubmitForm($form, $form_state);
+
+    // Delete the linked block content as requested.
+    if ($form_state->getValue('delete_linked_block')
+      && ($block_content = $this->getEntity()->getBlockContent(FALSE))) {
+      $block_content->delete();
+    }
+  }
+
+}
