www.safeway.com Open in urlscan Pro
45.60.12.113  Public Scan

Submitted URL: https://safeway.onelink.me/kO9l/41auowi0
Effective URL: https://www.safeway.com/account/sign-in.html
Submission: On October 16 via manual from US — Scanned from CA

Form analysis 4 forms found in the DOM

POST

<form id="idform" data-focus="false" method="post" class="uca-validate-login-form-submit" role="form" data-toggle="validator" onsubmit="return SWY.OKTA.signIn(event)" data-createaccount="/content/www/safeway/en/account/short-registration.html"
  novalidate="true">
  <input type="hidden" name="resourcePath" value="/content/www/safeway/en/account/sign-in/jcr:content/root/responsivegrid/column_control/par_1/unified_sign_in_otp">
  <p class="description-copy"></p>
  <div class="form-group">
    <label for="label-email" class="control-label body-s body-s--bold">Email Address</label>
    <input type="text" class="form-control sigin-email body-m" name="userId" id="label-email" placeholder="" required="required" data-required-error="Please enter your email address." onblur="AB.VALIDATION.trimSpace('label-email')"
      onkeypress="AB.VALIDATION.clearErrorMessage(this.id);" aria-describedby="errorMsgEmail" pattern="^[a-zA-Z0-9.!#$%&amp;’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+\.([a-zA-Z0-9-.]+)$" data-error="Please enter a valid email address.">
    <div id="errorMsgEmail" class="help-block with-errors instructionalText errorMessage body-s" aria-live="polite" aria-hidden="true"></div>
  </div>
  <div class="relative form-group">
    <label for="label-password" class="control-label body-s body-s--bold">Password</label>
    <div class="input-group show-text-prnt">
      <input type="password" class="form-control sign-in-passwordfield body-m" name="inputPassword" id="label-password" autocomplete="off" placeholder="" required="required" data-required-error="Please enter a password."
        aria-describedby="errorMsgPwd" maxlength="40" onkeypress="AB.VALIDATION.clearErrorMessage(this.id);">
      <div id="errorMsgPwd" class="help-block with-errors instructionalText errorMessage body-s" aria-live="polite" aria-hidden="true"></div>
      <span class="input-group-btn input-group-btn-error-helper">
        <button class="btn btn-default body-s body-s--extra-bold" role="button" tabindex="0" type="button" id="cShow" onclick="AB.VALIDATION.showHide( event, 'label-password',this.id);" aria-label="Show password" aria-disabled="false">Show</button>
      </span>
      <!-- <div id="cShow" class="d-block" aria-label="Show password"
                                    aria-disabled="true" role="button" tabindex="0"
                                    onclick="AB.VALIDATION.showHide(event, 'label-password','cShow');"
                                    onkeydown="AB.VALIDATION.showHideEnter(event, 'label-password','cShow');">Show</div> -->
    </div>
    <a role="link" class="forget-password-decoration  body-m" data-forgotpasslink="/content/www/safeway/en/account/forgot-password.html" id="forgot-password-id" tabindex="0" onclick="AB.DATALAYER.setForgotPasswordCookie();return SWY.OKTA.silentSignOutAndForgotPasswordRedirect(event, 'forgot-password-id');">Forgot Password?</a>
  </div>
  <p id="signInLoadingEmpty"></p>
  <!--Spinner after click on Sign In-->
  <div id="loaderSignIn" class="loading-div-tiny mask" aria-live="assertive">
    <div class="loading-spinner" role="status" aria-label="Loading">
      <div class="small progress">
        <div class="prog1">
          <div class="prog2"></div>
        </div>
      </div>
    </div>
  </div>
  <div class="forget-password-align-top">
    <div class="forget-password-align-left">
      <input id="btnSignIn" type="submit" tabindex="0" value="Sign In" class="btn btn-default uca-form-submit-btn-signin disabled" onclick="AB.DATALAYER.setLinkClickSignInEcom('sign-in')" onkeypress="AB.DATALAYER.setLinkClickSignInEcom('sign-in')"
        data-forgotpwdlink="/content/www/safeway/en/account/forgot-password" aria-disabled="false">
    </div>
    <div class="text-center my-4">
      <span class="body-m otp-link" role="button" tabindex="0" onclick="AB.COMMON.switchOTPContentSignIn('sign-in-with-otp', 'sign-in-password');AB.DATALAYER.OTPPageEvents('view',{ss3:'OTP'})">Sign in without a password</span>
    </div>
    <div class="text-center my-4">
      <span class="body-m change-account-link d-none" role="button" tabindex="0" onclick="AB.COMMON.setTopNavPreviousPage();SWY.OKTA.silentSignOutFromOkta(event);AB.COMMON.resetSignInFields()">Sign in using different account</span>
    </div>
    <hr aria-hidden="true">
    <h3 role="heading" aria-level="1">Don't have an account?</h3>
    <div>
      <a id="signin-pg-create-acc-btn" class="btn-create-account " href="/account/short-registration.html">Create Account</a>
    </div>
  </div>
</form>

<form id="signInOTPForm" data-createaccount="/content/www/safeway/en/account/short-registration.html">
  <!-- this is the block for the initial screen where user enters email/phone -->
  <div id="otp-modal">
    <div id="signin-otp-screen" class="my-4 pb-2">
      <p class="mb-4">Enter your mobile number or email address to receive a verification code.</p>
      <div class="form-group absolute">
        <label for="email-mobile-otp" class="control-label body-s body-s--bold">Mobile or Email Address</label>
        <input type="text" class="form-control" name="emailOrMobile" id="email-mobile-otp" placeholder="" required="required" data-required-error="Please enter a mobile number or email address" onfocus="AB.SIGNINOTP.clearErrorMessage(this.id);"
          oninput="AB.SIGNINOTP.onInputChange(event, this.id)" onblur="AB.SIGNINOTP.enableOtpContinueBtn(this.id, 'update-otp-continue-btn');" aria-describedby="error-email-mobile-otp"
          data-email-pattern="^[a-zA-Z0-9.!#$%&amp;’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+\.([a-zA-Z0-9-.]+)$" data-mobile-pattern="^[0-9]+$" data-mobile-valid-error="Please enter a valid mobile number"
          data-mobile-pattern-error="Please enter a mobile number that doesn't start with a 0 or 1" data-email-valid-error="Please enter a valid email address">
        <div class="position-absolute bottom-0 help-block with-errors text-left">
          <div id="error-email-mobile-otp" tabindex="-1" aria-live="polite" aria-hidden="true"></div>
        </div>
      </div>
    </div>
  </div>
  <div id="verify-otp-modal" class="mask">
    <p class="my-4" id="otp-sent-label"></p>
    <div class="relative form-group">
      <label for="otp-code" class="control-label body-s body-s--bold">Verification Code</label>
      <input type="text" required="required" class="form-control" id="otp-code" data-required-error="Please enter your one time passcode." value="" aria-describedby="invalied-otp" maxlength="6" placeholder="" autocomplete="off"
        data-length-error="Please enter a one time passcode that contains 6 digits." data-incorrect-error="The One-time Passcode you entered is incorrect. Please try again." pattern="[0-9]*" oninput="AB.SIGNINOTP.onInputChange(event, this.id)"
        onfocus="AB.SIGNINOTP.clearErrorMessage(this.id);" onblur="AB.SIGNINOTP.enableOtpSignInBtn('sign-in-otp-btn', 'otp-code')" onkeypress="return event.charCode >= 48 &amp;&amp; event.charCode <= 57">
      <div class="position-absolute bottom-0 help-block with-errors text-left">
        <div id="invalied-otp" tabindex="-1" aria-live="polite" aria-hidden="true"></div>
      </div>
      <div class="resend-otp-code">
        <span class="otp-link body-s" id="resend-code" role="button" tabindex="0" onclick="AB.SIGNINOTP.resendOtp();">Resend code </span>
      </div>
    </div>
  </div>
  <div id="enter-password-modal" class="mask">
    <div id="number-not-setup"></div>
    <div id="enter-password-text"></div>
    <div class="relative form-group">
      <label for="label-password-otp" class="control-label body-s body-s--bold">Password</label>
      <div class="input-group show-text-prnt">
        <input type="password" class="form-control sign-in-passwordfield body-m" name="inputPassword" id="label-password-otp" autocomplete="off" placeholder="" required="required" data-required-error="Please enter a password."
          aria-describedby="error-sign-in-with-password" maxlength="40" oninput="AB.SIGNINOTP.onInputChange(event, this.id)" onfocus="AB.SIGNINOTP.clearErrorMessage(this.id, true);"
          onblur="AB.SIGNINOTP.enableSignInWithPasswordButton(this.id, 'sign-in-with-password')">
        <button class="body-s otp-link" role="button" tabindex="0" type="button" id="show-hide-password" onclick="AB.VALIDATION.showHide( event, 'label-password-otp', 'show-hide-password');" aria-label="Show password"
          aria-disabled="false">Show</button>
      </div>
      <div class="position-absolute bottom-0 help-block with-errors text-left">
        <div id="error-sign-in-with-password" tabindex="-1" aria-live="polite" aria-hidden="true"></div>
      </div>
      <div class="forget-password-link">
        <a id="enter-password-page-link" data-forgotpasslink="/content/www/safeway/en/account/forgot-password.html" tabindex="0" role="link" onclick="AB.DATALAYER.OTPPageEvents('click','OTP:email-password|forgot-password');AB.DATALAYER.setForgotPasswordCookie();return SWY.OKTA.silentSignOutAndForgotPasswordRedirect(event, 'enter-password-page-link');">
                                    <span class="otp-link body-s">Forgot Password</span>
                                </a>
      </div>
    </div>
  </div>
  <!-- THis is the KMSI CHeckbox block -->
  <!-- <div class="form-group mt-4 mask pt-sm-3 pt-5" id="kmsi-modal-otp">
                        <label class="checkBox mb-0" for="rememberMe-otp">
                            <input id="rememberMe-otp" name="rememberMe-otp" type="checkbox" checked aria-describedby="warningKMSITextID-otp" />
                            <span class="checkmark"></span>
                            <span class="kmsiText body-m">Keep me signed in</span>
                        </label>
                        <p class="warningKMSIText body-s" id="warningKMSITextID-otp">Not recommended for public devices.</p>
                    </div> -->
  <p id="signInOTPLoadingEmpty"></p>
  <div id="loaderSignInOTP" class="loading-div mask" aria-live="assertive">
    <div class="loading-spinner" role="status" aria-label="Loading">
      <div class="small progress">
        <div class="prog1">
          <div class="prog2"></div>
        </div>
      </div>
    </div>
  </div>
  <div id="otp-modal-buttons">
    <button type="submit" class="btn btn-default" id="update-otp-continue-btn" disabled="" onclick="SWY.OKTA.sendOneTimePasscode()">Continue </button>
    <div class="text-center mt-4">
      <span class="otp-link body-s" role="button" tabindex="0" onclick="AB.COMMON.switchOTPContentSignIn('sign-in-password', 'sign-in-with-otp');AB.DATALAYER.OTPPageEvents('click','OTP|cancel');">Cancel</span>
    </div>
  </div>
  <div id="verify-otp-modal-buttons" class="mask">
    <button type="submit" class="btn btn-default mt-4" id="sign-in-otp-btn" disabled="disabled" onclick="AB.SIGNINOTP.signInWithOtp();">Sign In </button>
    <div class="text-center mt-4 mask" id="use-password-link">
      <span class="otp-link body-s" role="button" tabindex="0"
        onclick="AB.SIGNINOTP.onEnterPasswordLoad();AB.SIGNINOTP.showHideSection(['enter-password-modal', 'enter-password-modal-buttons','kmsi-modal-otp'], ['verify-otp-modal', 'verify-otp-modal-buttons']);AB.DATALAYER.OTPPageEvents('click','OTP:email-code|use-password');">
        Use password</span>
    </div>
    <div class="text-center mt-4 mask" id="use-different-emaiil-from-otp">
      <span class="otp-link body-s" role="button" tabindex="0"
        onclick="AB.SIGNINOTP.showHideSection(['otp-modal', 'otp-modal-buttons', 'sign-in-otp-header', 'kmsi-modal-otp'], ['verify-otp-modal', 'verify-otp-modal-buttons', 'verify-otp-header']);AB.DATALAYER.OTPPageEvents('click','OTP:email-code|try-different-email');AB.SIGNINOTP.silentSignOutAndFeildReset(event);">Use
        a different email</span>
    </div>
    <div class="text-center mt-4 mask" id="try-different-number">
      <span class="otp-link body-s" role="button" tabindex="0"
        onclick="AB.SIGNINOTP.showHideSection(['otp-modal', 'otp-modal-buttons', 'sign-in-otp-header', 'kmsi-modal-otp'], ['verify-otp-modal', 'verify-otp-modal-buttons', 'verify-otp-header']);AB.DATALAYER.OTPPageEvents('click','OTP:mobile-code|try-different-number');AB.SIGNINOTP.silentSignOutAndFeildReset(event);">Try
        a different number</span>
    </div>
  </div>
  <div id="enter-password-modal-buttons" class="mask">
    <button type="submit" class="btn btn-default mt-4" id="sign-in-with-password" disabled="disabled" onclick="AB.SIGNINOTP.signInWithPassword();">Sign In </button>
    <div class="text-center mt-4 mask" id="try-different-number-from-password">
      <span class="otp-link body-s" role="button" tabindex="0"
        onclick="AB.SIGNINOTP.showHideSection(['otp-modal', 'otp-modal-buttons', 'kmsi-modal-otp'], ['enter-password-modal', 'enter-password-modal-buttons', 'kmsi-modal-otp']);AB.DATALAYER.OTPPageEvents('click','OTP:mobile-password|try-different-number');AB.SIGNINOTP.silentSignOutAndFeildReset(event);">Try
        a different number</span>
    </div>
    <div class="text-center mt-4 mask" id="use-verification-code">
      <span class="otp-link body-s" role="button" tabindex="0"
        onclick="AB.SIGNINOTP.onVerifyOTPLoad();AB.SIGNINOTP.showHideSection(['verify-otp-modal', 'verify-otp-modal-buttons'], ['enter-password-modal', 'enter-password-modal-buttons']);AB.DATALAYER.OTPPageEvents('click','OTP:email-password|use-code');">
        Use verification code</span>
    </div>
    <div class="text-center mt-4 mask" id="use-different-emaiil-from-password">
      <span class="otp-link body-s" role="button" tabindex="0"
        onclick="AB.SIGNINOTP.showHideSection(['otp-modal', 'otp-modal-buttons'], ['enter-password-modal', 'enter-password-modal-buttons', 'kmsi-modal-otp']);AB.DATALAYER.OTPPageEvents('click','OTP:email-password|try-different-email');AB.SIGNINOTP.silentSignOutAndFeildReset(event);">Use
        a different email</span>
    </div>
  </div>
</form>

<form novalidate="" class="ng-untouched ng-pristine ng-invalid">
  <div class="input-field mb-8">
    <div class="input-field__wrapper"><label for="enterUsername" class="input-field__float-label"><input id="enterUsername" type="text" placeholder=" " aria-label="Email or mobile number" aria-describedby="error-username" formcontrolname="username"
          required="" class="ng-untouched ng-pristine ng-invalid"><span>Email or mobile number</span></label></div><!---->
  </div>
  <div><button type="submit" class="btn btn-lg btn-primary auth-styles__btn" disabled=""> Sign in without a password <!----><!----><!----></button><button type="button" class="btn btn-lg btn-secondary auth-styles__btn" disabled=""> Sign in with
      password <!----><!----><!----></button></div>
</form>

<form novalidate="" class="ng-untouched ng-pristine ng-invalid">
  <div class="input-field mb-24">
    <div class="input-field__wrapper"><label for="ppUsername" class="input-field__float-label"><input id="ppUsername" type="text" placeholder=" " aria-describedby="error-username" formcontrolname="username" required="" aria-label="Email Address"
          class="ng-untouched ng-pristine ng-invalid"><span>Email Address</span></label></div><!---->
  </div>
  <div><button data-tabindex="last" type="submit" class="btn btn-lg btn-primary prog-prof__btn" disabled=""> Save <!----><!----><!----></button></div>
</form>

Text Content

SIGN IN

Close
Unsupported browser

You're currently using an unsupported browser, which may impact the sites
display and prevent key functionality. Update your browser now for greater
security, speed, and the best experience on this site. View supported browsers.

✕
Skip to main content


× Buy It Again Deals Marketplace Meal Plans Recipes Safeway Business Schedule &
Save 5% Halloween Categories No data found for this store Categories




Featured Specialty Diets Order Ahead Exclusive Brands Wine Celebrations COVID-19
Shop

* Buy It Again
* Deals
* Marketplace
* Meal Plans
* Recipes
* Safeway Business
* Schedule & Save 5%
* Halloween
* Categories
* No data found for this store
  
Safeway for U Weekly Ad Recipes Health Pharmacy Your Store Featured Specialty
Diets Order Ahead Exclusive Brands Wine Celebrations COVID-19

Editing order for  Review Edits
Unlimited Free Delivery with FreshPass®
Plus score a $5 monthly credit with annual subscription – a $60 value!
Restrictions apply Start Free Trial
Close

false


SIGN IN



Email Address

Password

Show
Forgot Password?




Sign in without a password
Sign in using different account

--------------------------------------------------------------------------------


DON'T HAVE AN ACCOUNT?

Create Account


SIGN IN CHECK YOUR



Enter your mobile number or email address to receive a verification code.

Mobile or Email Address


Verification Code

Resend code
Password
Show

Forgot Password




Continue
Cancel
Sign In
Use password
Use a different email
Try a different number
Sign In
Try a different number
Use verification code
Use a different email
false


WELCOME BACK!

Enter your mobile phone number or email. If you’ve shopped in store, use the
same number. We’ll send a verification code.
Email or mobile number
Sign in without a password Sign in with password
New to Safeway? Create account
Are you a business? Create a business account
 * Quick Links
 * Contact Us
 * FAQ
 * Our Brands
 * Mobile Apps
 * About Schedule & Save
 * Gift and Prepaid Cards
 * Find Your Local Safeway
 * COVID-19 Vaccine
 * Safeway Pharmacy
 * Product FAQ
 * All Brands List
 * Entertaining Guide
 * Safeway Business

 * Company Info
 * About Us
 * Albertsons Companies
 * Careers
 * Suppliers
 * For Employees
 * Foundation
 * Product Recalls

 * Policies & Disclosures
 * Terms of Use
 * Privacy Policy
 * Your Privacy Choices
 * Accessibility Statement
 * HIPAA Notice of Privacy Practices
 * Supply Chain Transparency
 * Other Policies & Disclosures

 * Connect

 * 
 * 
 * 
 * 
 * 
 * 

   
 * Quick Links Arrow_Right_Red
   
   
 * Company Info Arrow_Right_Red
   
   
 * Policies & Disclosures Arrow_Right_Red
   

   
 * Back
   
 * Contact Us
 * FAQ
 * Our Brands
 * Mobile Apps
 * About Schedule & Save
 * Gift and Prepaid Cards
 * Find Your Local Safeway
 * COVID-19 Vaccine
 * Safeway Pharmacy
 * Product FAQ
 * All Brands List
 * Entertaining Guide
 * Safeway Business

   
 * Back
   
 * About Us
 * Albertsons Companies
 * Careers
 * Suppliers
 * For Employees
 * Foundation
 * Product Recalls

   
 * Back
   
 * Terms of Use
 * Privacy Policy
 * Your Privacy Choices
 * Accessibility Statement
 * HIPAA Notice of Privacy Practices
 * Supply Chain Transparency
 * Other Policies & Disclosures

 * Connect

 * 
 * 
 * 
 * 
 * 
 * 

© 2024 Albertsons Companies, Inc.  All rights reserved.




WELCOME BACK! HOW WOULD YOU LIKE TO CONTINUE?

Currently Shopping


Previously Shopped


Continue

CONFIRM ORDER CHANGES?

As a reminder, the changes to your order have not been saved yet.

We're not able to confirm your pending order at this time.

 
Cancel Changes Save


SORRY, WE'RE HAVING ISSUES.



We cannot complete your request at this time. Please try again later. This offer
is invalid or not available any more.



 
Close


SESSION EXPIRED



Your session is expired.  Please sign in to continue.



 
Sign In


 
Got It



FIND A STORE NEAR YOU, OR SHOP FOR DELIVERY OR PICKUP.


CHOOSE HOW YOU WOULD LIKE TO SHOP.


Delivery Quality and convenience delivered right to your door.

Pickup Call us when you get to the store, we'll load the groceries for you.

In Store Collect coupons, view Weekly Ad and build your list.
We've updated our navigation to help you browse categories faster and discover
more ways to shop.
Already have an account? Sign in
Place order by {{checkout time}} to get it by your selected delivery time.





We're glad you're back!
Enjoy this special deal just for you. Find more like it in Safeway for U.




PLEASE ENTER YOUR EMAIL

We use this email to save all your deals and link them to your account. This
will help you to apply them both in-store and online.
Email Address
Save





×


Close
We use cookies. But not the delicious ones we sell in our bakery. These cookies
are the digital type that enhances your experience and improves our website.
Certain cookies are necessary and can’t be turned off, but we also allow others
to place cookies to track the performance of our website and deliver
personalized content and ads. You can select your preference using the buttons.

If you're interested in learning more about how we handle your personal data,
read our Privacy Policy .
Customize Cookies Necessary Only Accept All






Questions?