Setup with logged in users to avoid slow loading


My Woocommerce website is lightning fast when users are NOT logged in but quite slow when users log in as cache needs to recreate for each user.
The issue is all my users need to login to see their own prices (as it's a B-to-B website) so they all have a slow experience...

I tested with "Cache Logged-in Users" and ESI both activated and deactivated and it doesn't change the speed.

What I would need is have the following caches:
- caching each page per user role (instead of per user as there are too many users so it's not worth crawling for each user as cache gets deleted after each change so it would be crawling non stop...)
- each page should also be cached depending of if the user role being logged in or not
- pricing should never being cached

So if I have 3 roles then each page should be cached 6 times (per user role and logged in/out)

Is there a way to achieve that or any better settings to improve speed for logged in users?
My server has 6GB RAM, use Cyberpanel Pro, Litespeed caching plugin and Redis extension

Last edited:
Unfortunately while the speed becomes lightning fast for logged in users, the pages appear as the user was logged out though
Here are the steps I did:
1- Admin role was cached as per the method detailed in the link you sent
2- When logging in the the home page shows my account being logged in as I can see the admin top bar
3- Going to any product page shows me as logged out as I don't see the product prices like it's supposed to but instead I see the message ''Login to see prices''
4- I log in again, then see the home page with the admin bar, and when going to any product page it shows same as in 3-

Is it possible to cache pages with the user role being logged in so all details that appear for a logged in user role are actually displayed?