Hi Evan,
The user will only disappear from the GPP page if you will modify the role assigned to the user by navigating to internal database of the controller.
You can map the required role (with controllers access) to the captive portal profile.
The user will get this role post authenticating on the CP page.
In this case, we do not have to make any changes to the user in the internal database.
The role mapped to captive portal profile should override the role listed in the internal database automatically.
In order to check the config that you have, please share the following outputs:
1. show local-userdb | include <name of guest user>
2. show aaa authentication captive-portal <name of profile>
In the captive portal profile, you will see a server group mapped to it.
I need the following output as well:
show aaa server-group <name of the group mapped in CP profile>