diff --git a/app/Http/Middleware/HumanVerification.php b/app/Http/Middleware/HumanVerification.php
index b4decd0548583dc1057d3d42f64134e3c68ffb01..d8ca32eccb5f12be14b6dc235eed3a839179c710 100644
--- a/app/Http/Middleware/HumanVerification.php
+++ b/app/Http/Middleware/HumanVerification.php
@@ -25,7 +25,7 @@ class HumanVerification
          * If someone that uses a bot finds this out we 
          * might have to change it at some point.
          */
-        if($request->filled('password') || $request->filled('key') || !env('BOT_PROTECTION', false)){
+        if($request->filled('password') || $request->filled('key') || $request->filled('appversion') || !env('BOT_PROTECTION', false)){
             return $next($request);
         }
 
@@ -38,6 +38,8 @@ class HumanVerification
             DB::table('humanverification')->insert(
                 ['id' => $id, 'unusedResultPages' => 1, 'locked' => false, 'updated_at' => now()]
             );
+            # Insert the URL the user tries to reach
+            DB::table('usedurls')->insert(['user_id' => $id, 'url' => $request->url()]);
             $user = DB::table('humanverification')->where('id', $id)->first();
         }else if($user->locked !== 1){
             $unusedResultPages = intval($user->unusedResultPages);
@@ -46,10 +48,12 @@ class HumanVerification
             #   50, 75, 85, >=90 => Captcha validated Result Pages
             # If the user shows activity on our result page the counter will be deleted
             # Maybe I'll add a ban if the user reaches 100
-            if($unusedResultPages === 50){
+            if($unusedResultPages === 50 || $unusedResultPages === 75 || $unusedResultPages === 85 || $unusedResultPages >= 90){
                 $locked = true;
             }
             DB::table('humanverification')->where('id', $id)->update(['unusedResultPages' => $unusedResultPages, 'locked' => $locked,  'updated_at' => $createdAt]);
+            # Insert the URL the user tries to reach
+            DB::table('usedurls')->insert(['user_id' => $id, 'url' => $request->url()]);
         }
         $request->request->add(['verification_id' => $id, 'verification_count' => $unusedResultPages]);
 
diff --git a/database/migrations/2018_05_03_101301_usedurls.php b/database/migrations/2018_05_03_101301_usedurls.php
new file mode 100644
index 0000000000000000000000000000000000000000..c74687607da9dff258a4d11e4aa040a95f1f8359
--- /dev/null
+++ b/database/migrations/2018_05_03_101301_usedurls.php
@@ -0,0 +1,34 @@
+<?php
+
+use Illuminate\Support\Facades\Schema;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Database\Migrations\Migration;
+
+class Usedurls extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('usedurls', function (Blueprint $table) {
+            $table->increments('id')->unique();
+            $table->string('user_id');
+            $table->string('url');
+            $table->timestamp('created_at');
+            $table->foreign('user_id')->references('id')->on('humanverification')->onDelete('cascade');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::drop('usedurls');
+    }
+}