Skip to main content

Complete Metadata

Metadata includes your manifest and embed metadata. Complete, valid metadata is required for indexing, category placement, and high‑quality embeds. Acceptance Criteria
  • Manifest is publicly accessible at /.well-known/farcaster.json
  • Required fields are present and valid (accountAssociation, frame, primaryCategory, tags)
  • Images meet size/format constraints; text fields respect length limits
How to Implement
Validate your manifest using our preview tools at base.dev/preview.

In-app Authentication

Users must remain in the Base app throughout the authentication flow. Eliminate flows that bounce users out of the Base app. Acceptance Criteria
  • No external redirects
  • No email / phone verification
  • Users can explore before sign‑in when possible
How to Implement

Client-Agnostic

There must be no client‑specific behaviors or wording that degrade the experience in the Base app. You must also ensure that you don’t redirect the user to another client for functionality supported in the Base app. Acceptance criteria
  • Do not hardcode client‑specific URLs (e.g., Farcaster‑only links)
  • Use neutral language in UI (e.g. use “Share to Feed” instead of “Share to Farcaster”)
  • Eliminate buttons that deeplink to other clients for features supported in the Base app
How to Implement
  • Update all links according to the Links guide
  • Review the Base App Compatability guide for functionality not supported in the Base app. All other functionality must keep users in the Base app.
Sponsor transaction fees to remove friction and reduce drop‑off for new users. For mini apps on Base, we recommend using the Base Paymaster. Acceptance criteria
  • Transactions are sponsored via a paymaster
How to Implement
Claim free gas credits on base.dev.

Batch Transactions (EIP-5792)

Batch sequential actions where applicable to minimize signatures and reduce friction. Use EIP‑5792 capabilities to send multiple calls in one request. Acceptance criteria
  • Where applicable, combine sequential actions into a single batch (e.g. approve + swap)
How to Implement
I