My retool pod on AWS EKS cluster is stuck in CrashBackLoop with following error: Error: Last license check too long ago.
Has anyone come across this before? How can I solve this
I have another retool deployment on another AWS EKS cluster which uses the same license key and its working fine, although that cluster was setup long ago
Did you recently upgrade or make any other changes to your instance? Has anything changed about your SSL configuration? What are the last four digits of the key you're using?
Please also note that non-enterprise keys (license keys starting with SSOP..) are only designed for a single instance, so while we don't block you from spinning up additional test instances, having multiple instances per key might impact your features and billing/user reporting.
For more detail here, here are the errors we are seeing:
│ {"level":"info","message":{"http":{"method":"GET","url_path":"http://cache-retool-cd432600-code-executor/api/checkHealth"},"type":"CLIENT_REQUEST"},"timestamp":"2025-08-19T18:32:37.704Z"} │
│ {"level":"info","message":"Rechecking license status...","timestamp":"2025-08-19T18:32:37.709Z"} │
│ {"level":"info","message":{"http":{"method":"GET","request":{"time":0.012743488999083638},"url_path":"http://cache-retool-cd432600-code-executor/api/checkHealth"},"status":200,"type":"CLIENT_FINISH"},"timestamp":"2025-08-19T18:32:37.716Z"} │
│ {"level":"info","message":"license check http response code: 200","timestamp":"2025-08-19T18:32:38.495Z"} │
│ {"level":"info","message":"License key feature flag overrides: {}","timestamp":"2025-08-19T18:32:38.498Z"} │
│ {"level":"info","message":"Updated license status from licensing server","timestamp":"2025-08-19T18:32:38.500Z"} │
│ {"level":"error","message":{"stack":"Error\n at Query.run (/retool_backend/node_modules/.pnpm/sequelize@6.31.0_patch_hash=dk6qy5gyzbjysuc4vxu23jnkrm_mysql2@2.3.3_oracledb@5.3.0_snowflake-_geltwdb3fqjepyd2eep3x2qxtu/node_modules/sequelize/lib/dialects/post │
│ Encountered error │
│ Error: Last license check too long ago. │
│ at _5r (/retool_backend/bundle/main.js:5398:3715) │
│ at process.processTicksAndRejections (node:internal/process/task_queues:95:5) │
│ at async H2_ (/retool_backend/bundle/main.js:10192:3897) │
│ at async V2_ (/retool_backend/bundle/main.js:10192:3000) │
│ Exiting...
Not sure why the license check goes through but then fails. We have tried a couple of different license keys and seeing the same issue. The license keys do start with SSOP, but one production and one staging instance should work as far as I'm aware? We've even tried using
We're using v3.114.28-stable of the retool self-hosted image and v6.7.0 of the helm chart to deploy.
cc @Darren
Sorry, meant to say in the previous message - We've even tried using LOCAL-ONLY-TRIAL to try to force the deployment through but that hasn't worked either
Have you tried the license key ending in ff30? It looks like that one is tied to an active subscription
Can you double check if there are any trailing or leading spaces in the license key when you log it in the container? i.e. echo $LICENSE_KEY
How are you setting the license key on this instance? If you can share your config files with me, that could be helpful to research further
Last license check too long ago. occurs when the licensing server cannot be reached and the last payload is being used. If the key is set correctly, this points towards it being a network issues. Could you check if your network is blocking requests to licensing.tryretool.com?
Hi Tess, this was not a networking issue as we could see a successful response code from the license server. It looks like there was an issue with updating the retool database instead, the error message was not accurate here. We created a new database instance and were able to successfully deploy after that.