diff --git a/src/Form/TableAdoptForm.php b/src/Form/TableAdoptForm.php
index d1d4ec7..8b4f446 100644
--- a/src/Form/TableAdoptForm.php
+++ b/src/Form/TableAdoptForm.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\data\Form;
 
+use Drupal\Core\Extension\ExtensionDiscovery;
 use Drupal\Core\Form\FormBase;
 use Drupal\Core\Form\FormStateInterface;
 
@@ -24,7 +25,37 @@ class TableAdoptForm extends FormBase {
    * {@inheritdoc}
    */
   public function buildForm(array $form, FormStateInterface $form_state) {
+    // These are all the tables in the db.
+    $orphaned_tables = array_keys(schema_dbobject()->inspect());
+    asort($orphaned_tables);
 
+    $drupal_schema = array();
+    $enabled_modules = array_keys((new ExtensionDiscovery(\Drupal::root()))->scan('module'));
+    foreach($enabled_modules as $module) {
+      $drupal_schema += drupal_get_module_schema($module);
+    }
+    $drupal_schema = array_keys($drupal_schema);
+
+    // We have now subtracted all the tables created via hook_schema.
+    $orphaned_tables = array_diff($orphaned_tables, $drupal_schema);
+
+    if (count($orphaned_tables) < 1) {
+      $form['no_orphaned_tables'] = array(
+        '#type' => 'markup',
+        '#markup' => t('There are no orphaned tables in your database.'),
+      );
+    } else {
+      $form['orphaned_tables'] = array(
+        '#type' => 'checkboxes',
+        '#title' => t('Orphaned Tables'),
+        '#options' =>  array_combine($orphaned_tables, $orphaned_tables),
+      );
+
+      $form['submit'] = [
+        '#type' => 'submit',
+        '#value' => 'Adopt',
+      ];
+    }
     return $form;
   }
 
