Welcome to the forum @ntonge! 
With the Company Pack, your 5 floating seats can be reassigned freely within your organization. The seats are designed to be transferrable — when someone no longer needs access, the seat goes back into your pool. So you won't lose it permanently by issuing it now. For this reason, we don't really have a mechanism to "deactivate" the seat.
That said, for your use case you probably don't need to issue licenses to your annotators at all. The floating licenses are for people who need to run Prodigy (start servers, create recipes, export data). If your undergraduate annotators only need to access the annotation UI in a browser, they don't need Prodigy installed or a license of their own. For that you'd need a way to deploy it, of course so let's look at the deployment options for annotators other than ngrok or paid cloud:
The simplest setup given your constraints would be to run Prodigy on a machine inside your university network and have annotators connect via the local network.
- Run Prodigy on a lab machine or your own workstation that's on the university LAN. Start it with --host 0.0.0.0 so it listens on all interfaces:
python -m prodigy ner.manual my_dataset blank:en ./data.jsonl --label LABEL1,LABEL2 --host 0.0.0.0
- Give each annotator a session URL — they just open a browser and go to:
http://YOUR_MACHINE_IP:8080/?session=annotator_name
- Restrict who can annotate with
PRODIGY_ALLOWED_SESSIONS:
export PRODIGY_ALLOWED_SESSIONS="alice,bob,charlie"
- Add basic auth for an extra layer of protection:
export PRODIGY_BASIC_AUTH_USER="myproject"
export PRODIGY_BASIC_AUTH_PASS="a_shared_password"
- Use a shared database (e.g., PostgreSQL) if you want annotations to persist more robustly than the default SQLite, but SQLite works fine for smaller projects.
If annotators are remote / off-campus, check if your university offers VPN access — they can VPN in and reach the machine the same way. That avoids the need for ngrok or public-facing infrastructure entirely, and your IT department is likely already set up for it.
Another option to consider is Modal. Modal has a free tier that's plenty for annotation workloads. The also have a special offering for academics you might want to have a look at. Prodigy has a built-in Modal plugin that makes deployment on Modal straightforward:
Once you're aet up with Modal, you can test the UI with an ephemeral server:
dotenv run -- python -m prodigy modal.serve "ner.manual my_dataset blank:en ./data.jsonl --label LABEL1,LABEL2" --assets ./data
When you're happy with the setup, promote to a persistent deployment:
dotenv run -- python -m prodigy modal.deploy "ner.manual my_dataset blank:en ./data.jsonl --label LABEL1,LABEL2" --assets ./data
This gives you a stable public URL you can share with annotators See the Prodigy Modal docs for the full walkthrough.
Since you have the Company Pack, you can use SSO via OpenID Connect to control who can annotate. This works with providers like Auth0, Google, or Microsoft Entra (many universities already have Entra/Azure AD). See here for details
If SSO is too much setup, basic auth works as mentioned above fine for a short-term project.
Hope that helps — feel free to follow up with questions about the setup!