Firefox Passkey Autofill Missing? Check the Input, Request and Settings

Click the passkey button and sign-in works, yet the username field in Firefox suggests nothing. Why does a working passkey vanish from autofill?

Firefox Passkey Autofill Missing? Check the Input, Request and Settings
TLDR
  • A working passkey button does not guarantee a suggestion in the username field.
  • Firefox 158 can show conditional UI for an input containing only the webauthn autocomplete token.
  • Input markup, conditional requests and password-manager settings need separate checks.

Check the autofill path before rebuilding authentication

If a dedicated passkey button authenticates successfully but the username field shows no passkey, separate the suggestion UI from the authentication operation. The credential can work while the autofill path fails to surface it.

Firefox 158 changes the input requirement: autocomplete="webauthn" can now show conditional UI without another autofill field token. Previously, Firefox required a combination such as username webauthn.

That existing combination remains useful for a username field. Keep webauthn last in the token list:

<label for="username">Username</label>
<input id="username" name="username"
       autocomplete="username webauthn">

The annotation tells the browser what to offer at this control. It does not register a credential or complete authentication by itself.

Pending is normal until the user selects a passkey

Form autofill authentication also requires navigator.credentials.get() with mediation: "conditional". The request waits for interaction with the annotated field instead of immediately presenting a modal authentication dialog.

A pending promise is therefore not, by itself, a failure. Choosing the password path can leave that request unresolved. Use an AbortController to cancel the pending operation when your flow needs to initiate another WebAuthn request.

Check conditional support with isConditionalMediationAvailable():

const supported = Boolean(
  window.PublicKeyCredential &&
  PublicKeyCredential.isConditionalMediationAvailable
) && await PublicKeyCredential.isConditionalMediationAvailable();

console.log({ conditionalMediation: supported });

This checks a capability. A true result does not establish that the user has a matching passkey or that a particular credential provider will display a suggestion.

Disabling password saving can affect the passkey suggestion

Mozilla tracks missing passkey options when Ask to save passwords is disabled. The issue remains NEW as of October 26, 2026. Its triage notes describe reproduction on Firefox 156 on Windows and a macOS case.

A related report explicitly distinguishes successful button-based authentication from missing autofill despite correct markup and a positive capability check. That report was closed as a duplicate, which links it to the existing issue; it does not mean the defect was fixed.

For a useful reproduction, record the browser version, password-saving setting, installed password-manager extension and credential storage location. Change one condition at a time. The new standalone-token support in Firefox 158 should not be mistaken for a fix announcement covering this separate settings issue.

Keep an explicit passkey entry point

Mozilla’s triage notes explain that sites can still invoke authentication explicitly when password saving is disabled. That supports retaining a visible Sign in with a passkey button alongside autofill rather than making the suggestion the only entry point.

Both paths still need server-side verification. Validate the challenge, origin, RP ID, signature and required user-verification conditions before establishing the session. A frontend credential result alone is not a completed server login.

Check markup, then the conditional request, then the user’s environment and the button path. That sequence narrows a missing suggestion without treating a functioning credential as a failed registration.