diff --git a/app/Http/Controllers/SettingsController.php b/app/Http/Controllers/SettingsController.php
index 03b6629eb018cc996e9a76f2feee5cfde7fdb0fb..94e63f03d49365dbbedbaec5b3a607d9af361113 100644
--- a/app/Http/Controllers/SettingsController.php
+++ b/app/Http/Controllers/SettingsController.php
@@ -56,7 +56,7 @@ class SettingsController extends Controller
         $cookies = Cookie::get();
         $settingActive = false;
         foreach ($cookies as $key => $value) {
-            if (\starts_with($key, [$fokus . "_engine_", $fokus . "_setting_"]) || strpos($key, $fokus . '_blpage') === 0 || $key === 'dark_mode') {
+            if (\starts_with($key, [$fokus . "_engine_", $fokus . "_setting_"]) || strpos($key, $fokus . '_blpage') === 0 || $key === 'dark_mode' || $key === 'new_tab' || $key === 'key') {
                 $settingActive = true;
             }
         }
@@ -234,6 +234,14 @@ class SettingsController extends Controller
             }
         }
 
+        $newTab = $request->input('nt');
+        if(!empty($newTab)){
+            if($newTab === "off") {
+                Cookie::queue('new_tab', '', 0, '/', null, false, false);
+            }elseif($newTab === "on") {
+                Cookie::queue('new_tab', 'on', 0, '/', null, false, false);
+            }
+        }
 
         return redirect(LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), route('settings', ["fokus" => $fokus, "url" => $url])));
     }
@@ -256,7 +264,12 @@ class SettingsController extends Controller
             if($key === 'dark_mode'){
                 Cookie::queue($key, "", 0, '/', null, false, false);
             }
-
+            if($key === 'new_tab'){
+                Cookie::queue($key, "", 0, '/', null, false, false);
+            }
+            if($key === 'key'){
+                Cookie::queue($key, "", 0, '/', null, false, false);
+            }
         }
         $this->clearBlacklist($request);
 
@@ -281,6 +294,10 @@ class SettingsController extends Controller
         $cookiePath = "/" . substr($path, 0, strpos($path, "meta/") + 5);
         if($key === 'dark_mode'){
             Cookie::queue($key, "", 0, '/', null, false, false);
+        } elseif($key === 'new_tab') {
+                Cookie::queue($key, "", 0, '/', null, false, false);
+        } elseif($key === 'key') {
+            Cookie::queue($key, "", 0, '/', null, false, false);
         }else{
             Cookie::queue($key, "", 0, $cookiePath, null, false, false);
         }
@@ -296,7 +313,9 @@ class SettingsController extends Controller
         foreach (Cookie::get() as $key => $value) {
             if($key === 'dark_mode'){
                 Cookie::queue($key, "", 0, '/', null, false, false);    
-            }else{
+            } elseif($key === 'new_tab') {
+                    Cookie::queue($key, "", 0, '/', null, false, false);    
+            } else {
                 Cookie::queue($key, "", 0, $cookiePath, null, false, false);
             }
         }
@@ -407,6 +426,9 @@ class SettingsController extends Controller
             if($key === 'dark_mode'){
                 Cookie::queue($key, $value, 0, '/', null, false, false);
             }
+            if($key === 'new_tab' && $key === 'on') {
+                Cookie::queue($key, 'on', 0, '/', null, false, false);
+            }
             foreach($sumaFile['filter']['parameter-filter'] as $suma => $filter){
                 if($key === $suma && $value === $filter){
                     Cookie::queue($key, $value, 0, $cookiePath, null, false, false);
diff --git a/app/MetaGer.php b/app/MetaGer.php
index e1a5084a7fddf4b05f39ab04c4bcf8bffc5c0134..44e60475f08747f39e7689c0c158c00ba8a23701 100644
--- a/app/MetaGer.php
+++ b/app/MetaGer.php
@@ -1093,7 +1093,7 @@ class MetaGer
             $this->sprueche = $request->input('quotes');
         }
 
-        $this->newtab = $request->input('newtab', 'on');
+        $this->newtab = $request->input('new_tab', \Cookie::get('new_tab'));
         if ($this->newtab === "on") {
             $this->newtab = "_blank";
         } elseif ($this->framed) {
diff --git a/resources/js/scriptResultPage.js b/resources/js/scriptResultPage.js
index 9caa935fae20f47e858cb0f8ea3272503a5cb7f2..18ce51a129fc0f6d50f281608680f144d8f93de7 100644
--- a/resources/js/scriptResultPage.js
+++ b/resources/js/scriptResultPage.js
@@ -5,11 +5,11 @@ $(document).ready(function () {
 });
 
 function botProtection() {
-  $('.result').find('a').click(function () {
+  $('.result').find('a').click(function (e) {
     var link = $(this).attr('href');
     var newtab = false;
     var top = false;
-    if ($(this).attr('target') == '_blank') {
+    if ($(this).attr('target') == '_blank' || e.ctrlKey) {
       newtab = true;
     } else if ($(this).attr('target') == "_top") {
       top = true;
@@ -32,10 +32,7 @@ function botProtection() {
           }
         }
       });
-    if (!newtab)
-      return false;
-    else
-      return true;
+    return newtab;
   });
 }
 
@@ -135,4 +132,4 @@ function loadMoreResults() {
       });
     }
   }, 1000);
-}
\ No newline at end of file
+}
diff --git a/resources/lang/de/settings.php b/resources/lang/de/settings.php
index a1b23f6e1102e655883d72213b155ccad658f4b9..26de372ad66b973bb77db40cabb9dec7b3aff793 100644
--- a/resources/lang/de/settings.php
+++ b/resources/lang/de/settings.php
@@ -25,13 +25,17 @@ return [
     'add' => 'Hinzufügen',
     'clear' => 'Blacklist leeren',
     'copy' => 'Kopieren',
+    'hint' => 'Diese Einstellung betrifft alle Fokusse und Unterseiten übergreifend!',
 
     'darkmode' => 'Dunklen Modus umschalten',
-    'darkmode-hint' => 'Die Einstellung für den dunklen Modus betrifft alle Fokusse und Unterseiten übergreifend!',
     'system' => 'Systemstandard',
     'dark' => 'Dunkel',
     'light' => 'Hell',
 
+    'newTab' => 'Ergebnisse in neuem Tab öffnen',
+    'off' => 'Aus',
+    'on' => 'An',
+
     // Translations from the settings overview
     'noSettings' => 'Aktuell sind keine Einstellungen gesetzt!',
     'allSettings.header' => 'Auf :root gesetzte Einstellungen',
@@ -45,5 +49,4 @@ return [
     'key' => 'Ihr Schlüssel für die werbefreie Suche',
     'blentry' => 'Blacklisteintrag',
     'removeCookie' => 'Diesen Cookie entfernen',
-    'dm' => 'Dunkler Modus',
 ];
diff --git a/resources/lang/en/settings.php b/resources/lang/en/settings.php
index 5bc3590ead6028d23dc7b25dc10958b545244fd5..62673341ed689a7cf4efa650a3347206d5f08e6e 100644
--- a/resources/lang/en/settings.php
+++ b/resources/lang/en/settings.php
@@ -25,13 +25,17 @@ return [
     'add' => 'Add',
     'clear' => 'Clear black list',
     'copy' => 'Copy',
+    'hint' => 'This setting affects all foci and sub-pages!',
 
     'darkmode' => 'Toggle dark mode',
-    'darkmode-hint' => 'The setting for dark mode affects all foci and sub-pages!',
     'system' => 'System Default',
     'dark' => 'Dark',
     'light' => 'Light',
 
+    'newTab' => 'Open results in new tabs',
+    'off' => 'off',
+    'on' => 'on',
+
     // Translations from the settings overview
     'noSettings' => "Currently no settings are set!",
     'allSettings.header' => "Settings on :root",
@@ -45,5 +49,4 @@ return [
     'key' => "Your key to the ad-free search",
     'blentry' => 'Black list entry',
     'removeCookie' => "Remove this cookie",
-    'dm' => 'Dark mode',
 ];
diff --git a/resources/less/metager/pages/resultpage/result.less b/resources/less/metager/pages/resultpage/result.less
index 7d5d91c64cdc33065b53f02c98e18d9f432441b9..7f4ded151b8f76363922769afa9405134dddff54 100644
--- a/resources/less/metager/pages/resultpage/result.less
+++ b/resources/less/metager/pages/resultpage/result.less
@@ -189,11 +189,7 @@
                 text-decoration: none;
             }
         }
-        @media (max-width: @screen-mobile) {
-            .result-open-newtab {
-                display: none;
-            }
-        }
+
         .result-open-proxy {
             &,
             &:active,
@@ -299,4 +295,4 @@
     filter: invert(1) brightness(0.4);
     height:16px;
     margin-right: 4px;
-}
\ No newline at end of file
+}
diff --git a/resources/views/layouts/result.blade.php b/resources/views/layouts/result.blade.php
index 3ada99dcfd0e875f0ef25f1087c98ce0929999c7..408fb6689740f71a0e3469430fe03e5bfd0e303e 100644
--- a/resources/views/layouts/result.blade.php
+++ b/resources/views/layouts/result.blade.php
@@ -5,7 +5,7 @@
 				@if( isset($result->price) && $result->price != 0)
 					<span class="result-price">{!! $result->price_text !!}</span>
 				@endif
-				<a href="{{ $result->link }}" @if($metager->isFramed())target="_top"@endif rel="noopener">
+				<a href="{{ $result->link }}" target="{{ $metager->getNewtab() }}" rel="noopener">
 					{!! $result->titel !!}
 				</a>
 			</h2>
@@ -16,7 +16,7 @@
 			@endif
 		</div>
 		<div class="result-subheadline">
-			<a class="result-link" href="{{ $result->link }}" title="{{ $result->anzeigeLink }}" rel="noopener" @if($metager->isFramed())target="_top"@endif tabindex="-1">
+			<a class="result-link" href="{{ $result->link }}" title="{{ $result->anzeigeLink }}" rel="noopener" target="{{ $metager->getNewtab() }}" tabindex="-1">
 				{{ $result->anzeigeLink }}
 			</a>
 			@if( isset($result->partnershop) && $result->partnershop === TRUE)
diff --git a/resources/views/settings/allSettings.blade.php b/resources/views/settings/allSettings.blade.php
index 0eb677d10a271c88e8e853a6e6cb49a3e11df9d6..eb8ae22350d6addb9c57a899e8645f3875bb3b31 100644
--- a/resources/views/settings/allSettings.blade.php
+++ b/resources/views/settings/allSettings.blade.php
@@ -20,7 +20,7 @@
                 <tbody>
                     @foreach(Cookie::get() as $key => $value)
                     <tr>
-                        <td>{{ $key . "=" . $value }}</td>
+                        <td>{{ $key . " = " . $value }}</td>
                         <td>
                         @if(strpos($key, "_engine_") !== FALSE)
                         @lang('settings.engineDisabled', ["engine" => $sumaFile->sumas->{substr($key, strrpos($key, "_")+1)}->{"display-name"}, "focus" => trans('index.foki.' . substr($key, 0, strpos($key, "_")))])
@@ -31,11 +31,13 @@
                                 @endif
                             @endforeach
                         @elseif($key === "key")
-                        @lang('settings.key')
+                            @lang('settings.key')
                         @elseif(strpos($key, "_blpage"))
-                        @lang('settings.blentry')
+                            @lang('settings.blentry')
                         @elseif($key === 'dark_mode')
-                        @lang('settings.dm')
+                            @lang('settings.darkmode')
+                        @elseif($key === 'new_tab')
+                            @lang('settings.newTab')
                         @endif
                         </td>
                         <td>
diff --git a/resources/views/settings/index.blade.php b/resources/views/settings/index.blade.php
index 94ee61fceee304fe2aa59021510ce64c3e3fca17..a17501e54fe0dbbfbcaee586f8aa6d6dbedc80bd 100644
--- a/resources/views/settings/index.blade.php
+++ b/resources/views/settings/index.blade.php
@@ -135,7 +135,15 @@
                         <option value="off" {{ Cookie::get('dark_mode') === "1" ? "disabled selected" : "" }}>@lang('settings.light')</option>
                         <option value="on" {{ Cookie::get('dark_mode') === "2" ? "disabled selected" : "" }}>@lang('settings.dark')</option>
                     </select>
-                    <small>@lang('settings.darkmode-hint')</small>
+                    <small>@lang('settings.hint')</small>
+                </div>
+                <div class="form-group">
+                    <label for="nt">@lang('settings.newTab')</label>
+                    <select name="nt" id="nt" class="form-control">
+                        <option value="off" {{ !Cookie::has('new_tab') ? "disabled selected" : "" }}>@lang('settings.off')</option>
+                        <option value="on" {{ Cookie::get('new_tab') === "on" ? "disabled selected" : "" }}>@lang('settings.on')</option>
+                    </select>
+                    <small>@lang('settings.hint')</small>
                 </div>
                 @if(LaravelLocalization::getCurrentLocale() === "de")
                 <div class="form-group">