diff --git a/snapengage.module b/snapengage.module
index 7509dd1..55e0e01 100644
--- a/snapengage.module
+++ b/snapengage.module
@@ -68,6 +68,7 @@ function snapengage_page_attachments_alter(array &$page) {
 
   // Cache visibility setting in hook_init for hook_footer.
   if (!isset($page_match)) {
+    // Visibility is defined by either 0 (except this path) and 1 (listed paths only).
     $visibility = \Drupal::config('snapengage.settings')->get('snapengage_visibility');
     $pages = Unicode::strtolower(\Drupal::config('snapengage.settings')->get('snapengage_pages'));
 
@@ -77,7 +78,7 @@ function snapengage_page_attachments_alter(array &$page) {
     if ($path_alias != $path) {
       $page_match = $page_match || \Drupal::service('path.matcher')->matchPath($path, $pages);
     }
-    $page_match = (($page_match or $visibility) && !($page_match and $visibility));
+    $page_match = (!$page_match && !$visibility) || ($page_match && $visibility);
   }
 
   if ($enabled == TRUE && $page_match == TRUE) {
