Back to work Case Study · Interaction & Product Design · Multi-platform

Keystone · Domestic Platforms

One access model, every platform.

Keystone's domestic education websites had several moments where users hit a login wall — saving favourites, writing reviews, requesting information, taking education tests, or booking programmes. My challenge was to turn those separate moments into one consistent member access pattern that worked across sites, markets, devices, and user intentions.

Interaction Design User Flows UX Research UI Design Mobile Design Edge Cases Cross-platform
The access pattern shown in context — a login modal that keeps users close to the task instead of sending them to a separate page.
Studentum.se homepage with the login modal open — 'Welcome to studentum!' with email field and Login button
01 The interruption problem

Login wasn't a single page. It was a repeated interruption — across every platform.

Login was not one screen. It appeared in different moments across the product — sometimes as a direct action, sometimes as a requirement before completing a task. That made the experience harder to explain, harder to maintain, and easier for users to misunderstand.

I mapped the entry points first to understand where login interrupted the journey, what the user was trying to do, and what the system needed to remember after authentication.

7+
Entry points mapped
Direct login, save favourite, review, education test, quote request, information request, and booking — each could trigger a login wall, on any of the platforms.
2
User types to handle
First-time visitors and returning members — the same flow needed to work clearly for both, without asking which they were.
1
Verified flow
Email plus a six-digit code — no password to forget, consistent across every entry point, device, and platform.
02 Mapping every entry point

Before designing a modal, I mapped every interruption.

Mapping every entry point helped reveal that login was not a single journey, but a recurring interruption across several user goals. Visuals show studentum.se as the primary design context.

Direct login as-is flow — existing login page with account creation and password paths
As-is The old direct login path exposed unnecessary branches around email login, passwords, forgotten passwords, and recovery states.
when a feature required login...

Indirect login moments were more sensitive because users were already mid-task and expected to continue without losing context.

Need to login to use feature — entry point flow showing login wall for feature-gated actions
03 One access model

A fragmented experience, resolved into one verified flow.

I recommended a code-based access flow because it reduced dependency on forgotten passwords, worked for both new and returning users, and could be reused across entry points without asking users to choose the right login path first.

The goal was not only to simplify the login screen, but to create one reliable access model that could support direct login, gated actions, account creation, verification, and return-to-task behaviour.

Before The as-is flows — direct login (left) with its unnecessary password and recovery branches, and indirect entry points (right) where users were already mid-task when login was required. As-is
Direct login as-is flow — login page with account creation and password paths
Indirect login as-is flows — newsletter signup, Utbildningstest, Quote Request, Booking request
After The new master flow unified new and returning users around one verification model, with clear recovery and resend states. Improved flows
Newsletter signup — redesigned with unified login pattern
Booking request — redesigned with unified login pattern
Send Lead — redesigned with unified login pattern
Edge cases covered
Resend code Wrong email / change email Returning user recognised Redirect after login First-time vs returning Mobile bottom sheet
04 States and edge cases

Every state, designed.

Each modal state was designed as part of one system: start, create account, verify code, success, and return to the original task.

Desktop login modal — email field and Login CTA
Login Entry point for returning members — email field, clear CTA, and a path to create an account for new users.
Create account modal — name and email fields for new users
Create account First-time visitors branch here seamlessly — same modal pattern, minimal friction.
Check your inbox modal — six-digit code entry with resend and change-email options
Check your inbox Six-digit code entry — with resend and change-email recovery options clearly visible.
Welcome success modal — confirmation after login or account creation
Welcome Success confirmation — redirects to the action that triggered login so users never lose their place.
Mobile login bottom sheet — email field with Login CTA
Bottom sheet
Mobile navigation — not logged in state
Nav: not logged in
Mobile navigation — logged in state
Nav: logged in
Not logged in
Studentum.se — logged out state
Logged in
Studentum.se — logged in state

The navigation adapted to the user state — logged-out users saw entry points to create or sign in, while logged-in users saw account actions.

Outcome & learnings

This project taught me that authentication is rarely just a form. In a product with many entry points, the real UX challenge is remembering the user's intent, reducing repeated decisions, and making every edge case feel like part of the same system.

The most valuable work happened before the modals: mapping every place a user could hit a login wall — across studentum.se, gymnasium.se, utbildning.se, and Keystone's wider domestic platform patterns — and building one pattern that resolved all of them.

The pattern was validated, specced, and handed off for release, with conversion and drop-off defined as the success measures. I left Keystone before rollout, so the impact numbers aren't mine to claim — what I can show is the reasoning: every entry point mapped, every state resolved, one model that held across four platforms.

01

Map the entry points first

The modal is the last thing to design, not the first. Entry point mapping defines the constraints and reveals the real scope.

02

One mechanism reduces cognitive load

Users don't need different login behaviours depending on where they are. Consistency builds trust across the whole product.

03

Edge cases are the UX

Resend, wrong email, returning-user recognition, and redirect logic — these are where the real design work lives.