# Guideline 4.0 - Design: Sign in with Apple Button Not Following HIG

**Guideline:** 4.0 · **Store:** Apple App Store · **Risk:** low · **Difficulty:** easy · **Typical turnaround:** 1-2 hours

Canonical URL: https://appstorereject.com/rejections/apple/4/guideline-40-design-sign-in-with-apple-button-not-following-hig

## Description

Your app offers Sign in with Apple but the button does not conform to Apple’s Human Interface Guidelines. Apple requires that the Sign in with Apple button use the specific system-provided styles (black, white, or outlined) at the correct size and proportions. Custom-drawn buttons, incorrect colors, or mismatched button styles relative to other social login options will trigger this rejection.

## Common variations

- Sign in with Apple button uses a custom gray outline instead of system style
- Sign in with Apple button is smaller than other third-party login buttons
- Sign in with Apple button uses a non-standard font or icon
- Sign in with Apple button does not have equal or greater prominence than other login options
- Sign in with Apple button colors do not match the approved black, white, or outlined styles

## Example rejection email

```
Your app uses Sign in with Apple as a login option but does not use Sign in with Apple button design, branding and/or user interface elements appropriately as described in the Sign in With Apple Human Interface Guidelines. Specifically, your Sign in with Apple button is outlined in gray and does not match the size and style of the other login buttons. Please revise your app to address this issue and resubmit.
```

## Resolution steps

## How to Fix Sign in with Apple Button Issues

1. **Use the system-provided button** — Replace any custom implementation with `ASAuthorizationAppleIDButton` (UIKit) or `SignInWithAppleButton` (SwiftUI). These automatically handle correct sizing, corner radius, font, and Apple logo.

2. **Choose an approved style** — Apple allows three button styles: `.black`, `.white`, and `.whiteOutline`. Pick the one that best fits your background. Do not invent a gray outlined variant.

3. **Match or exceed other login button prominence** — The Sign in with Apple button must be at least the same size as competing login buttons (Google, Facebook, etc.). Measure height and width to confirm.

4. **Maintain correct proportions** — Do not stretch, compress, or alter the aspect ratio. The system button handles this automatically; only adjust via `frame` or constraints on the container.

5. **Test on light and dark backgrounds** — Switch between Dark Mode and Light Mode and verify the button remains legible and correctly styled in both.

6. **Review Apple’s HIG checklist** — Refer to the Human Interface Guidelines > Sign in with Apple page for the full set of requirements including minimum padding and placement rules.

7. **Resubmit with screenshots** — In the reviewer notes, include screenshots of your updated login screen showing the corrected button.

## Appeal guidance

Appeals are rarely necessary for this rejection. The fix is straightforward — swap to the system-provided button. Only appeal if you believe your button already uses ASAuthorizationAppleIDButton and the reviewer made an error; attach screenshots as evidence.

## Before / after examples

**Before:** // Custom button that violates HIG
let appleButton = UIButton(type: .system)
appleButton.setTitle("Sign in with Apple", for: .normal)
appleButton.layer.borderColor = UIColor.gray.cgColor
appleButton.layer.borderWidth = 1
appleButton.layer.cornerRadius = 8
**After:** // System-provided button that follows HIG
let appleButton = ASAuthorizationAppleIDButton(
    authorizationButtonType: .signIn,
    authorizationButtonStyle: .black
)
appleButton.cornerRadius = 8
**Why it works:** Use ASAuthorizationAppleIDButton instead of a custom UIButton. The system button guarantees correct branding, logo placement, and localized text.

**Before:** // SwiftUI: custom view that doesn't meet guidelines
Button("Sign in with Apple") { handleAppleSignIn() }
    .frame(height: 40)
    .background(Color.white)
    .overlay(RoundedRectangle(cornerRadius: 8).stroke(Color.gray))
**After:** // SwiftUI: system-provided Sign in with Apple button
SignInWithAppleButton(.signIn) { request in
    request.requestedScopes = [.email, .fullName]
} onCompletion: { result in
    handleAppleSignIn(result)
}
.signInWithAppleButtonStyle(.black)
.frame(height: 50)
**Why it works:** SwiftUI provides SignInWithAppleButton which automatically renders the correct Apple branding and adapts to light/dark mode.

## Common questions

**Can you appeal a 4.0 rejection?**

Appeals are rarely necessary for this rejection. The fix is straightforward — swap to the system-provided button. Only appeal if you believe your button already uses ASAuthorizationAppleIDButton and the reviewer made an error; attach screenshots as evidence.

**How long does this typically take to fix?**

Typical turnaround is 1-2 hours (difficulty: easy). After resubmission, most re-reviews complete within 24-48 hours.

---
*Machine-readable source: https://api.appstorereject.com/api/rejections/detail?slug=guideline-40-design-sign-in-with-apple-button-not-following-hig*