Guide

Apple Wallet and Google Wallet pass best practices

A pass is looked at for a few seconds, usually at a counter or a door, on a phone held at arm’s length. This guide covers how to make one that reads at a glance, scans first time and stays useful after it’s saved, on both Apple Wallet and Google Wallet.

Sizes and limits below were checked against Apple’s and Google’s official documentation on September 29, 2026. Both platforms change their guidance from time to time, so the sources are linked at the end. Where a number is our own rule of thumb rather than a platform rule, we say so.

Design for a glance

Apple describes the model plainly: a pass contains text, images and a barcode. You choose the pass style, supply the images and set colors and text formatting, and the wallet lays out and presents the pass for you. Google’s pass templates work the same way. You don’t get to arrange the pass freely, which is what keeps every pass readable, and it means the craft is in what you put in each slot.

Three rules cover most of the good decisions:

  1. One job per pass. A loyalty card shows progress and a code. A ticket shows the event, the time and a code. If you find yourself adding a fifth field, the pass is doing too much.
  2. The most important thing is the most visible thing. On Apple, the primary field is prominent, secondary fields are less so, and auxiliary fields less again. Put the value the person needs at the door in the prominent position.
  3. Don’t rely on the pass being current. Updates can be delayed, and the person may have turned them off. The pass is a convenient way to look up a record on your side, not the record itself.

Apple and Google at a glance

The two wallets ask for different things. Keeping this table in mind saves the most common rework: an image sized for one wallet and rejected or cropped badly on the other.

Apple WalletGoogle Wallet
LogoRectangular, top left, up to 160 × 50 ptCircular logo, at least 660 × 660 px, masked to a circle. Optional wide logo, 1280 × 400 px recommended
Main imageStrip image, about 375 pt wide and 98 to 144 pt tall depending on pass style, or a background and thumbnailHero image, 1032 × 812 px recommended (about 5:4), PNG
CodesQR, PDF417, Aztec, Code 128QR, Code 128 and others
Front textUp to 3 header, 1 primary, 4 secondary and 4 auxiliary fields, depending on styleTitle under 47 characters, subtitle under 88. Up to two fields per row, three rows if possible
Back of passAny number of fields, with longer textGuidelines: up to two text modules, up to four link URIs in total, up to two info modules
Lock-screen alertsA change message on a field that changed. Meant for time-sensitive newsUp to 3 push-triggering messages per pass per 24 hours
Nearby alertsUp to 10 relevant locations and 10 beacon UUIDsNot part of Google’s generic-pass notifications
UpdatesYour server sends an empty push, then the device fetches the latest passUpdate the pass object through the API
Add buttonAdd to Apple Wallet badge, in SVG or EPSAdd to Google Wallet button, black only, at least 48 dp tall

Color and contrast

Both wallets let you set the pass’s background color. Apple also lets you set the text and label colors. The single most common design failure is text that is hard to read against the chosen background, especially under a phone screen at reduced brightness or in sunlight.

Logos and icons

Apple Wallet

Apple’s logo image is rectangular and sits in the top left corner of the pass. It can be up to 160 × 50 points, and in practice it is usually narrower than that. Apple also asks for a separate square icon of 29 × 29 points, shown when the pass appears on the lock screen and in apps such as Mail when a pass is attached to an email. Provide the artwork at the original, @2x and @3x sizes so it stays sharp on every screen.

Google Wallet

Google shows a circular logo, masked from a square image. Use a PNG at least 660 × 660 pixels, keep a 15% margin around the artwork so the mask doesn’t cut it off, and don’t mask the image yourself.

Google also supports a wide logo: a transparent PNG, recommended at 1280 × 400 pixels (16:5), with a minimum height of 400 pixels. When set, it appears top left in place of the round logo and logo text.

Rectangle or circle?

Choose by the shape of your mark, not by the wallet. A wordmark such as “Rowan Coffee” in a wide lockup belongs in a rectangular logo, and a badge, monogram or icon belongs in a circle. Apple’s logo is rectangular either way, so a wide logo works there without change. On Google, supply the wide logo so it shows as designed, rather than squeezing a wordmark into a circle where it becomes unreadable.

Hero and strip images

The big image across the front of a pass has different names and different shapes on each wallet. This is where most passes look cropped or blurry.

Apple Wallet: strip, background and thumbnail

Which images Apple shows depends on the pass style. In Apple’s documentation:

The strip is sized in points, and the size depends on the style:

ImageSizeNotes
Strip, event ticket375 × 98 ptOn current iPhones. Older devices used 320 × 84
Strip, gift card or coupon375 × 144 ptA taller strip than the other styles
Strip, other styles375 × 123 ptOlder devices used 320 × 123
Background180 × 220 ptShown behind the whole front, cropped slightly on all sides and blurred
Thumbnail90 × 90 ptShown next to the front fields. Keep the aspect ratio between 2:3 and 3:2
Footer286 × 15 ptBoarding passes, shown near the barcode

As with the logo, provide each at original, @2x and @3x. A strip is a wide, short banner, so put the subject in the middle and keep text out of the image: the wallet already overlays fields on top of it.

Google Wallet: the hero image

Google’s current guidance recommends a hero image of 1032 × 812 pixels, an aspect ratio of about 5:4, saved as a PNG. Use a transparent PNG if you want the pass’s background color to show through. The do’s and don’ts are worth following closely:

One image for both wallets?

Rarely. Apple’s strip is a wide, short banner and Google’s hero is close to square, so a single crop will be wrong for one of them. Design a wide version for Apple and a squarer version for Google from the same source photo.

Text and fields

Apple Wallet

Apple limits how many fields fit on the front of a pass: up to three header fields, a single primary field, up to four secondary fields and up to four auxiliary fields. Boarding passes allow two primary fields and up to five auxiliary fields. On coupons, store cards and generic passes with a square barcode, the secondary and auxiliary fields share a combined total of four.

Apple gives one instruction worth repeating: don’t include more fields than are displayed on the front. Fields that are hidden today can become visible if layouts change, and you don’t want a previously hidden field to suddenly show up. Long content belongs on the back, which has no limit on the number of fields.

The pass’s description is read out for accessibility. Apple suggests starting with a high-level term such as “Membership card” or “Weekly coupon”, followed by one or two small pieces of information.

Google Wallet

Google’s brand guidelines set these content limits:

ElementGuideline
TitleFewer than 47 characters
SubtitleFewer than 88 characters
Field labelFewer than 20 characters
Field dataFewer than 15 characters
LayoutLimit data to two fields per row, and up to three rows if possible

For the back of the pass, Google’s guidelines ask you to use up to two text modules, up to four link URIs in total, and up to two info modules. Link prefixes matter: use http: for a website, tel: for a phone number and mailto: for an email address, so each one is tappable.

Writing for both

QR codes and barcodes

The code is the part of the pass that has to work every time, so it deserves the most care.

Which format

Apple Wallet supports four formats: QR, PDF417, Aztec and Code 128. Apple Watch doesn’t support Code 128; if a pass includes one, the watch falls back to another barcode on the pass. Google supports QR and Code 128, among others.

The value in the code

Personalization

A generic pass with the same name and number on every copy doesn’t earn a place on someone’s phone. Personal details, such as a name, a balance or a seat, are what make people keep it.

Notifications and lock-screen alerts

Notifications are the most powerful and most abused part of a pass. The platforms treat them very differently.

Apple Wallet

Apple doesn’t have a free-text push. Instead, when a field on the pass changes and that field has a change message, the device shows the message. Apple is direct about when to use it: change messages interrupt the user and must be read immediately, so they’re typically appropriate only for time-sensitive information, such as a concert that has been delayed by an hour and moved across town.

Apple also supports relevance, which raises a pass on the lock screen at the right time and place:

Google Wallet

Google does have a message API. You may send a maximum of three messages that trigger a push notification in a 24-hour period per pass. More attempts return a quota error, and Google may throttle delivery if it decides you’re spamming people. People must have notifications enabled for their passes to receive them. When someone taps a notification, they see the pass with a callout that leads to the new message on the back.

For generic passes, Google also supports two built-in notifications tied to a time interval: an upcoming notification 24 hours before the interval starts, and an expiry notification 48 hours before it ends.

What good looks like

Updating passes

Being able to change a pass after it’s saved is one of the biggest reasons to use a wallet pass rather than a PDF, and the platforms handle it differently.

Apple Wallet

Updating is a cooperative effort between the device, Apple’s servers and yours. After a pass is added, the device registers with your server. When something changes, your server sends a push notification with an empty payload to each registered device. The device then asks your server what changed and fetches the latest version of the pass. Apple’s reasons for the empty payload: push notifications aren’t guaranteed to be delivered, and several from the same source are coalesced into one.

Update, or create a new pass?

Apple’s example is a good test. Updating a train ticket for a delayed departure, or a store card to show the current balance, is fine. Replacing a coupon for free breadsticks with a coupon for a free drink will confuse people, because from their side one coupon disappeared and another appeared. In that case, issue a new pass.

Trust your server

Apple’s guidance is worth quoting almost directly: don’t rely on the balance shown on the pass, because values on it may not be up to date. Always read important information from a source you control. The same applies to a stamp count, a points balance or a gift card amount. Treat the pass as a display of your data.

Expiry and lifecycle

Distributing passes

A great pass still needs people to add it. Where and how you offer it matters.

Use the official buttons

Apple’s Add to Apple Wallet badge is available in 45 locales, as SVG for web and email or EPS for print. Don’t create your own version. Use it on a white or light background, or the outline version on a very dark one, leave a minimum clear space of 0.1X (X being the badge’s height), don’t add shadows or glows, and don’t let it dominate your layout. Place it near the pass it adds. In email or on the web, include instructions for opening it on an iPhone, since people may open the message on another device.

Google’s Add to Google Wallet button comes only in black, has a minimum height of 48 dp and needs 8 dp of clear space on every side. It should be at least as large as other buttons nearby. Use Google’s provided buttons, including its localized versions, and don’t change the font, color, radius or padding.

Write “Google Wallet” with a capital G and a capital W, and never abbreviate it.

Give people a reason and a path

Testing on real devices

A pass that looks right in a preview can still fail in a wallet. Always test on real phones, and test the way a customer would.

  1. Add the pass on a real iPhone and a real Android phone. Check that the logo, icon, strip or hero, colors and every field look right, including long values.
  2. Scan the code with the scanner you’ll use. Try low screen brightness, a cracked screen protector and a slightly tilted phone.
  3. Look at the lock screen. On Apple, check the icon and how the pass surfaces.
  4. Change something and watch the update arrive. Then turn the phone’s network off and on, and confirm it catches up.
  5. Send a test notification. Confirm it appears, and that tapping it lands somewhere sensible.
  6. Remove the pass and add it again. Check that nothing breaks and that your records stay consistent.
  7. Try the pass with the wallet in another language and with a large text size if your customers use them.

Common mistakes

Pre-launch checklist

Frequently asked questions

What size should an Apple Wallet logo be?+

Apple’s logo image sits in the top left of the pass and is up to 160 × 50 points, and in practice it is usually narrower. Provide it at 1x, 2x and 3x so it stays sharp on every screen. The separate square icon is 29 × 29 points.

What size should a Google Wallet hero image be?+

Google’s current guidelines recommend 1032 × 812 pixels, an aspect ratio of about 5:4, as a PNG. Use a square or nearly square image with about 20 dp of padding at the top and bottom, and don’t embed text in it. Older guides quote 1032 × 336, which is no longer what Google recommends.

Should I use a rectangular or a circular logo?+

Apple’s logo is rectangular. Google shows a logo masked to a circle and also supports an optional wide, rectangular logo. Use the wide version if your brand mark is a wordmark, and the circular version if it is a badge or icon.

Should I use a QR code or a barcode on a pass?+

Use a QR code if guests or staff scan with a phone camera, and Code 128 if your reader is a laser or handheld scanner that expects a linear barcode. Whichever you choose, test it with the exact scanner you will use.

How many notifications can I send to a Google Wallet pass?+

Google allows a maximum of 3 messages that trigger a push notification per pass in a 24-hour period, and may throttle delivery if it considers the messages spam.

Can I change a pass after someone has saved it?+

Yes, on both wallets. Apple sends a push telling the device to fetch the latest version of the pass, and Google lets you update the pass object through its API. Apple notes that updates are not guaranteed to be delivered, so keep the authoritative data on your own server.

Which barcode formats does Apple Wallet support?+

QR, PDF417, Aztec and Code 128. Apple Watch does not support Code 128 and falls back to another barcode on the pass if one is included.

Sources

Last checked on September 29, 2026. Apple’s current developer pages load dynamically, so the Apple numbers above come from its Wallet Developer Guide. If Apple’s current documentation differs, follow Apple.

Your next card doesn’t need to be plastic.

Create a wallet pass your customers can save in seconds.