diff --git a/aws/cloudformation/DEPLOY.md b/aws/cloudformation/DEPLOY.md
index 4b0d21e1b..9d739d883 100644
--- a/aws/cloudformation/DEPLOY.md
+++ b/aws/cloudformation/DEPLOY.md
@@ -2,6 +2,16 @@
 
 With an AWS account you can easily deploy a private AnythingLLM instance on AWS. This will create a url that you can access from any browser over HTTP (HTTPS not supported). This single instance will run on your own keys and they will not be exposed - however if you want your instance to be protected it is highly recommend that you set the `AUTH_TOKEN` and `JWT_SECRET` variables in the `docker/` ENV.
 
+**Quick Launch**
+2. Log in to your AWS account
+3. Open [CloudFormation](https://us-west-1.console.aws.amazon.com/cloudformation/home)
+4. Ensure you are deploying in a geographic zone that is nearest to your physical location to reduce latency.
+5. Click `Create Stack`
+6. Use the file `aws_no_creds.json` as your JSON template.
+7. Launch. On first boot fill out your ENV keys and you are fully live.
+Done.
+
+**Custom Launch**
 [Refer to .env.example](../../docker/HOW_TO_USE_DOCKER.md) for data format.
 
 The output of this cloudformation stack will be:
@@ -41,7 +51,7 @@ The output of this cloudformation stack will be:
 **Note:** 
 Your instance will not be available instantly. Depending on the instance size you launched with it can take anywhere from 10-20 minutes to fully boot up.
 
-If you want to check the instances progress, navigate to [your deployed EC2 instances](https://us-west-1.console.aws.amazon.com/ec2/home) and connect to your instance via SSH in browser.
+If you want to check the instance's progress, navigate to [your deployed EC2 instances](https://us-west-1.console.aws.amazon.com/ec2/home) and connect to your instance via SSH in browser.
 
 Once connected run `sudo tail -f /var/log/cloud-init-output.log` and wait for the file to conclude deployment of the docker image.
 You should see an output like this
diff --git a/aws/cloudformation/aws_no_creds.json b/aws/cloudformation/aws_no_creds.json
new file mode 100644
index 000000000..a96413774
--- /dev/null
+++ b/aws/cloudformation/aws_no_creds.json
@@ -0,0 +1,263 @@
+{
+  "AWSTemplateFormatVersion": "2010-09-09",
+  "Description": "Create a stack that runs AnythingLLM on a single instance",
+  "Parameters": {
+    "InstanceType": {
+      "Description": "EC2 instance type",
+      "Type": "String",
+      "Default": "t2.small"
+    },
+    "InstanceVolume": {
+      "Description": "Storage size of disk on Instance in GB",
+      "Type": "Number",
+      "Default": 10,
+      "MinValue": 4
+    }
+  },
+  "Resources": {
+    "AnythingLLMInstance": {
+      "Type": "AWS::EC2::Instance",
+      "Properties": {
+        "ImageId": {
+          "Fn::FindInMap": [
+            "Region2AMI",
+            {
+              "Ref": "AWS::Region"
+            },
+            "AMI"
+          ]
+        },
+        "InstanceType": {
+          "Ref": "InstanceType"
+        },
+        "SecurityGroupIds": [
+          {
+            "Ref": "AnythingLLMInstanceSecurityGroup"
+          }
+        ],
+        "BlockDeviceMappings": [
+          {
+            "DeviceName": {
+              "Fn::FindInMap": [
+                "Region2AMI",
+                {
+                  "Ref": "AWS::Region"
+                },
+                "RootDeviceName"
+              ]
+            },
+            "Ebs": {
+              "VolumeSize": {
+                "Ref": "InstanceVolume"
+              }
+            }
+          }
+        ],
+        "UserData": {
+          "Fn::Base64": {
+            "Fn::Join": [
+              "",
+              [
+                "Content-Type: multipart/mixed; boundary=\"//\"\n",
+                "MIME-Version: 1.0\n",
+                "\n",
+                "--//\n",
+                "Content-Type: text/cloud-config; charset=\"us-ascii\"\n",
+                "MIME-Version: 1.0\n",
+                "Content-Transfer-Encoding: 7bit\n",
+                "Content-Disposition: attachment; filename=\"cloud-config.txt\"\n",
+                "\n",
+                "\n",
+                "#cloud-config\n",
+                "cloud_final_modules:\n",
+                "- [scripts-user, always]\n",
+                "\n",
+                "\n",
+                "--//\n",
+                "Content-Type: text/x-shellscript; charset=\"us-ascii\"\n",
+                "MIME-Version: 1.0\n",
+                "Content-Transfer-Encoding: 7bit\n",
+                "Content-Disposition: attachment; filename=\"userdata.txt\"\n",
+                "\n",
+                "\n",
+                "#!/bin/bash\n",
+                "# check output of userdata script with sudo tail -f /var/log/cloud-init-output.log\n",
+                "sudo yum install docker -y\n",
+                "sudo usermod -a -G docker ec2-user\n",
+                "curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose\n",
+                "sudo chmod +x /usr/local/bin/docker-compose\n",
+                "sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose\n",
+                "sudo systemctl enable docker\n",
+                "sudo systemctl start docker\n",
+                "sudo yum install git -y\n",
+                "git clone https://github.com/Mintplex-Labs/anything-llm.git /home/ec2-user/anything-llm\n",
+                "cd /home/ec2-user/anything-llm/docker\n",
+                "cat >> .env << \"END\"\n",
+                "SERVER_PORT=3001\n",
+                "OPEN_AI_KEY=\n",
+                "OPEN_MODEL_PREF='gpt-3.5-turbo'\n",
+                "CACHE_VECTORS=\"true\"\n",
+                "VECTOR_DB=\"pinecone\"\n",
+                "PINECONE_ENVIRONMENT=\n",
+                "PINECONE_API_KEY=\n",
+                "PINECONE_INDEX=\n",
+                "STORAGE_DIR=\"./server/storage\"\n",
+                "GOOGLE_APIS_KEY=\n",
+                "UID=\"1000\"\n",
+                "GID=\"1000\"\n",
+                "END\n",
+                "cd ../frontend\n",
+                "rm -rf .env.production\n",
+                "cat >> .env.production << \"END\"\n",
+                "GENERATE_SOURCEMAP=true\n",
+                "VITE_API_BASE=\"/api\"\n",
+                "END\n",
+                "sudo docker-compose -f /home/ec2-user/anything-llm/docker/docker-compose.yml up -d\n",
+                "echo \"Container ID: $(sudo docker ps --latest --quiet)\"\n",
+                "sudo docker container exec -u 0 -t $(sudo docker ps --latest --quiet) mkdir -p /app/server/storage /app/server/storage/documents /app/server/storage/vector-cache /app/server/storage/lancedb\n",
+                "echo \"Placeholder folders in storage created.\"\n",
+                "sudo docker container exec -u 0 -t $(sudo docker ps --latest --quiet) touch /app/server/storage/anythingllm.db\n",
+                "echo \"SQLite DB placeholder set.\"\n",
+                "sudo docker container exec -u 0 -t $(sudo docker ps --latest --quiet) chown -R anythingllm:anythingllm /app/collector /app/server\n",
+                "echo \"File permissions corrected.\"\n",
+                "export ONLINE=$(curl -Is http://localhost:3001/api/ping | head -n 1|cut -d$' ' -f2)\n",
+                "echo \"Health check: $ONLINE\"\n",
+                "if [ \"$ONLINE\" = 200 ] ; then echo \"Running migrations...\" && curl -Is http://localhost:3001/api/migrate | head -n 1|cut -d$' ' -f2; fi\n",
+                "echo \"Setup complete! AnythingLLM instance is now online!\"\n",
+                "\n",
+                "--//--\n"
+              ]
+            ]
+          }
+        }
+      }
+    },
+    "AnythingLLMInstanceSecurityGroup": {
+      "Type": "AWS::EC2::SecurityGroup",
+      "Properties": {
+        "GroupDescription": "AnythingLLm Instance Security Group",
+        "SecurityGroupIngress": [
+          {
+            "IpProtocol": "tcp",
+            "FromPort": "22",
+            "ToPort": "22",
+            "CidrIp": "0.0.0.0/0"
+          },
+          {
+            "IpProtocol": "tcp",
+            "FromPort": "3001",
+            "ToPort": "3001",
+            "CidrIp": "0.0.0.0/0"
+          },
+          {
+            "IpProtocol": "tcp",
+            "FromPort": "3001",
+            "ToPort": "3001",
+            "CidrIpv6": "::/0"
+          }
+        ]
+      }
+    }
+  },
+  "Outputs": {
+    "ServerIp": {
+      "Description": "IP address of the AnythingLLM instance",
+      "Value": {
+        "Fn::GetAtt": [
+          "AnythingLLMInstance",
+          "PublicIp"
+        ]
+      }
+    },
+    "ServerURL": {
+      "Description": "URL of the AnythingLLM server",
+      "Value": {
+        "Fn::Join": [
+          "",
+          [
+            "http://",
+            {
+              "Fn::GetAtt": [
+                "AnythingLLMInstance",
+                "PublicIp"
+              ]
+            },
+            ":3001"
+          ]
+        ]
+      }
+    }
+  },
+  "Mappings": {
+    "Region2AMI": {
+      "ap-south-1": {
+        "AMI": "ami-0e6329e222e662a52",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "eu-north-1": {
+        "AMI": "ami-08c308b1bb265e927",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "eu-west-3": {
+        "AMI": "ami-069d1ea6bc64443f0",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "eu-west-2": {
+        "AMI": "ami-06a566ca43e14780d",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "eu-west-1": {
+        "AMI": "ami-0a8dc52684ee2fee2",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "ap-northeast-3": {
+        "AMI": "ami-0c8a89b455fae8513",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "ap-northeast-2": {
+        "AMI": "ami-0ff56409a6e8ea2a0",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "ap-northeast-1": {
+        "AMI": "ami-0ab0bbbd329f565e6",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "ca-central-1": {
+        "AMI": "ami-033c256a10931f206",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "sa-east-1": {
+        "AMI": "ami-0dabf4dab6b183eef",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "ap-southeast-1": {
+        "AMI": "ami-0dc5785603ad4ff54",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "ap-southeast-2": {
+        "AMI": "ami-0c5d61202c3b9c33e",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "eu-central-1": {
+        "AMI": "ami-004359656ecac6a95",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "us-east-1": {
+        "AMI": "ami-0cff7528ff583bf9a",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "us-east-2": {
+        "AMI": "ami-02238ac43d6385ab3",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "us-west-1": {
+        "AMI": "ami-01163e76c844a2129",
+        "RootDeviceName": "/dev/xvda"
+      },
+      "us-west-2": {
+        "AMI": "ami-0ceecbb0f30a902a6",
+        "RootDeviceName": "/dev/xvda"
+      }
+    }
+  }
+}
\ No newline at end of file