diff --git a/core_views_facets.info.yml b/core_views_facets.info.yml
index f50487a..75aff32 100644
--- a/core_views_facets.info.yml
+++ b/core_views_facets.info.yml
@@ -6,3 +6,5 @@ package: Search
 dependencies:
   - facets
   - views
+test_dependencies:
+  - search_api:search_api (1.x-dev)
diff --git a/core_views_facets.module b/core_views_facets.module
index 0e1c79e..c4927d4 100644
--- a/core_views_facets.module
+++ b/core_views_facets.module
@@ -74,21 +74,21 @@ function core_views_facets_entity_presave(EntityInterface $entity) {
       $sources = [];
       foreach ($entity->original->get('display') as $k => $display) {
         // Check if the current display is also a facet source plugin and that
-        // is removed from the view.
+        // is removed from the view. We use the double underscore here to make
+        // sure that we use core convention of "plugin:derived_plugin".
         foreach (['core_views_contextual_filter:', 'core_views_exposed_filter:'] as $facet_source) {
-          $test = $facet_source . $entity->id() . ':' . $display['id'];
-          if (array_key_exists($test, $definitions) && !array_key_exists($k, $entity->get('display'))) {
-            $entity_id = str_replace(':', '__', $test);
+          $facets_source_plugin_id = $facet_source . $entity->id() . '__' . $display['id'];
+          if (array_key_exists($facets_source_plugin_id, $definitions) && !array_key_exists($k, $entity->get('display'))) {
+            $entity_id = str_replace(':', '__', $facets_source_plugin_id);
             $source_entity = FacetSource::load($entity_id);
+            $sources[] = $facets_source_plugin_id;
             if (!is_null($source_entity)) {
               $source_entity->delete();
-              $sources[] = $test;
             }
           }
         }
       }
 
-
       // Loop over all deleted sources and delete the facets that were linked to
       // that source.
       if (count($sources) > 0) {
diff --git a/src/Plugin/facets/facet_source/CoreViewsContextualFilterDeriver.php b/src/Plugin/facets/facet_source/CoreViewsContextualFilterDeriver.php
index 8a79d8a..f7a2303 100644
--- a/src/Plugin/facets/facet_source/CoreViewsContextualFilterDeriver.php
+++ b/src/Plugin/facets/facet_source/CoreViewsContextualFilterDeriver.php
@@ -44,10 +44,10 @@ class CoreViewsContextualFilterDeriver extends FacetSourceDeriverBase {
                 continue;
               }
 
-              $machine_name = $view->id() . PluginBase::DERIVATIVE_SEPARATOR . $name;
+              $machine_name = $view->id() . '__' . $name;
 
               $plugin_derivatives[$machine_name] = [
-                'id' => $base_plugin_id . PluginBase::DERIVATIVE_SEPARATOR . $machine_name,
+                'id' => $base_plugin_id . ':' . $machine_name,
                 'label' => $this->t('Core view contextual filter: %view_name, display: %display_title', [
                   '%view_name' => $view->label(),
                   '%display_title' => $display_info['display_title'],
diff --git a/src/Plugin/facets/facet_source/CoreViewsExposedFilterDeriver.php b/src/Plugin/facets/facet_source/CoreViewsExposedFilterDeriver.php
index c58cb9e..bfa149f 100644
--- a/src/Plugin/facets/facet_source/CoreViewsExposedFilterDeriver.php
+++ b/src/Plugin/facets/facet_source/CoreViewsExposedFilterDeriver.php
@@ -45,10 +45,10 @@ class CoreViewsExposedFilterDeriver extends FacetSourceDeriverBase {
                 continue;
               }
 
-              $machine_name = $view->id() . PluginBase::DERIVATIVE_SEPARATOR . $name;
+              $machine_name = $view->id() . '__' . $name;
 
               $plugin_derivatives[$machine_name] = [
-                'id' => $base_plugin_id . PluginBase::DERIVATIVE_SEPARATOR . $machine_name,
+                'id' => $base_plugin_id . ':' . $machine_name,
                 'label' => $this->t('Core view exposed filter: %view_name, display: %display_title', [
                   '%view_name' => $view->label(),
                   '%display_title' => $display_info['display_title'],
diff --git a/src/Tests/CoreViewsIntegrationTest.php b/src/Tests/CoreViewsIntegrationTest.php
index fa1c79b..5e3732c 100644
--- a/src/Tests/CoreViewsIntegrationTest.php
+++ b/src/Tests/CoreViewsIntegrationTest.php
@@ -136,8 +136,8 @@ class CoreViewsIntegrationTest extends ViewTestBase {
     ));
     $this->entities[5]->save();
 
-    $this->exposedFiltersFacetSourceId = 'core_views_exposed_filter:core_views_facets_basic_integration:page_1';
-    $this->contextualFiltersFacetSourceId = 'core_views_contextual_filter:core_views_facets_basic_integration:page_1';
+    $this->exposedFiltersFacetSourceId = 'core_views_exposed_filter:core_views_facets_basic_integration__page_1';
+    $this->contextualFiltersFacetSourceId = 'core_views_contextual_filter:core_views_facets_basic_integration__page_1';
     $this->facetUrl = 'core-views-facets-basic-integration';
 
     // Create test views.
@@ -321,7 +321,7 @@ class CoreViewsIntegrationTest extends ViewTestBase {
     $edit = [
       'name' => $name,
       'id' => $id,
-      'facet_source_id' => 'core_views_exposed_filter:user_admin_people:page_1',
+      'facet_source_id' => 'core_views_exposed_filter:user_admin_people__page_1',
     ];
     $this->drupalPostForm(NULL, $edit, $this->t('Configure facet source'));
 
