Softotic
Back to insights
3 September 202621 min readiOSApp StoreAge RatingsFlutterChild Safety

App Store Social Media Age Rating Is Now Required: What iOS and Flutter Apps Need

Apple now requires apps to declare social media capabilities when submitting updates. Learn what counts as social media, when 13+ applies, and when Declared Age Range is required.

App Store Social Media Age Rating Is Now Required: What iOS and Flutter Apps Need

Apple's new social media declaration is now part of App Store submission readiness in September 2026. When submitting a new app or update, developers must indicate whether the app includes social media capabilities. Apple defines those capabilities more broadly than a traditional "social network": redistributing, amplifying, or interacting with user-generated content through a social feed or similar discovery experience can qualify.

If you declare social media capabilities, Apple says the app receives a minimum 13+ age rating and a Social Media content descriptor. There is a narrower path for apps that disable social media for users under 13, but Apple requires the Declared Age Range API at minimum to enforce that distinction.

The practical job is therefore:

text
Audit features
→ classify social media correctly
→ update App Store Connect
→ decide whether under-13 access exists
→ implement age-aware gating if required
→ test the real feature boundary

This guide explains that workflow for native iOS and Flutter teams.

What changed in September 2026?

Apple added social media questions to the App Store Connect age rating questionnaire in July 2026 and said responses would become required starting September 2026.

Apple's current What's New for the App Store says developers must indicate whether an app or game includes social media capabilities when submitting:

  • new apps
  • new versions or updates to the App Store
  • apps for notarization for alternative marketplace distribution

Apple's July 9 developer announcement says the questions are already available in App Store Connect and become mandatory for submission beginning in September 2026.

This is primarily a metadata and product-behaviour requirement, not a new SDK-minimum deadline.

A team can therefore be blocked or misclassified even when the application builds perfectly.

What does Apple mean by "social media"?

Apple's definition is more useful than the product category label.

Apple's age rating definitions describe Social Media as the redistribution, amplification, or interaction with user-generated content through a social feed or similar discovery method that visibly spreads content to many users.

Examples can include experiences where users:

  • view a feed of user-generated posts
  • like or react to user content
  • comment on user content
  • share or repost user content
  • amplify user content
  • discover user-generated content through community/search/feed surfaces

The key concept is not whether your app calls itself a social network.

It is whether the product allows user-generated content to be distributed and socially amplified or interacted with through discovery-style surfaces.

That can capture products such as:

text
community marketplace
fitness app with public activity feed
creator platform
dating app with discoverable public posts
gaming community
local neighbourhood app
photo/video sharing feature
professional community feed

even when "social media" is not the app's primary business category.

User-generated content is not automatically the same as social media

This distinction matters.

Apple separately defines User-Generated Content as broadly distributed content created by users, including text, photos, video, or audio.

Apple also separately defines Messaging and Chat as direct communication between users, such as text, voice/video chat, direct or group messages, or public posting.

So three concepts can overlap without being identical:

CapabilitySimplified meaning
User-Generated ContentUsers create content that forms part of the app experience
Messaging and ChatUsers communicate directly through app features
Social MediaUGC is redistributed, amplified or interacted with through feed/discovery mechanisms

A private support chat is not automatically a social feed.

A private messaging app may have different questionnaire implications from an app where users browse, like, comment on and repost public content.

Likewise, a review feature is not necessarily identical to a full social feed simply because users write text.

The feature behaviour matters.

A practical social-media classification test

Before answering the questionnaire, inventory the product instead of relying on the app's marketing category.

Ask these questions.

1. Can users create content?

Examples:

  • posts
  • photos
  • videos
  • reviews
  • comments
  • listings
  • activity updates
  • public profiles

If no, the social-media question may be straightforward.

If yes, continue.

2. Can other users discover that content through a feed, community, search, recommendation, or similar surface?

If the only viewer is the author or a tightly defined private recipient, that looks different from broadly discoverable content.

3. Can users interact with or amplify the content?

Look for:

  • likes
  • reactions
  • comments
  • shares
  • reposts
  • follows
  • views that influence visibility
  • ranking/recommendation signals

4. Does the feature visibly spread content to many users?

This is central to Apple's social-media definition.

A useful internal decision tree is:

text
User creates content?
        ↓ yes
Other users discover it broadly?
        ↓ yes
Can users interact with / amplify it?
        ↓ yes
Likely social-media capability
        ↓
Review App Store declaration

This is a product-classification aid, not a substitute for Apple's current questionnaire or legal advice.

What happens if you declare social media capabilities?

Apple says an app that declares social media capabilities will:

  1. be placed in the Social Media Time Allowance category
  2. receive a minimum age rating of 13+
  3. display a new Social Media content descriptor on its App Store product page

The Time Allowance category is part of Apple's newer parental-control framework for iOS 27, iPadOS 27 and macOS 27 or later.

The important commercial implication is that the answer is not invisible metadata.

It can affect:

  • the displayed age rating
  • parental controls
  • product-page descriptors
  • how the app is categorized for time allowances
  • the experience available to younger users

So product, engineering and App Store operations should agree on the answer.

Do not leave it as a last-minute form completed by whoever happens to upload the build.

Does every social app become 13+?

If you declare normal social media capabilities, Apple's current guidance says the app receives a minimum 13+ rating.

There is an alternative declaration for:

Social Media Disabled for Users Under 13

Apple's age-rating definitions say this means users under 13 do not have access to the social-media capabilities, the app calls the Declared Age Range API at minimum before enabling those features, and only age-appropriate UGC is delivered.

That creates two broad architectures.

Architecture A: social media available to the app population

text
App includes social capability
        ↓
Declare Social Media
        ↓
Minimum 13+ rating

Architecture B: app may serve younger users, but social media is blocked under 13

text
App has general features for younger users
        ↓
Declared Age Range check
        ↓
Under 13
→ no social-media capability
→ age-appropriate UGC only

13+
→ social-media capability can be enabled

Architecture B is not a metadata trick.

The application must actually enforce the feature boundary.

When is the Declared Age Range API required for this App Store path?

Apple's current guidance is explicit: if you declare that social media capabilities are disabled for users under 13, you need to use the Declared Age Range API at a minimum to check users' age ranges.

Apple's Declared Age Range documentation says the API lets an app request an age range without asking for an exact birthdate.

The app defines age gates, such as:

text
13
16
18

and receives an age range rather than a precise age.

Depending on region/account context, the API can provide:

  • a shared age range
  • an indication that sharing was declined in applicable scenarios
  • parental-control information
  • information about the age-range declaration source
  • regulatory-feature signals

For the social-media-under-13 path, the product needs a reliable decision around the 13-year gate.

Do not ask for an exact birthdate just because you need a 13+ gate

If the product question is:

Is this user below 13 or at least 13?

then collecting a full date of birth can create more personal data than the feature needs.

Apple's Declared Age Range framework is deliberately range-based.

A product policy can operate on:

text
under 13
13+

without storing:

text
2009-04-17

unless another legitimate requirement needs that exact date.

This is useful privacy design even when the implementation team is not trying to optimise for a compliance checkbox.

A native iOS architecture for social-media gating

Keep age assurance separate from the social feature implementation.

Conceptually:

text
Declared Age Range API
        ↓
AgePolicyService
        ↓
FeaturePolicy
        ↓
Social feed / posting / sharing / comments

Do not scatter raw API response checks throughout view controllers.

A simple application-domain model can look like:

swift
enum SocialAccess {
    case allowed
    case restrictedForAge
    case unavailable
    case needsResolution
}

Then one policy service interprets Apple signals and product rules.

The feed screen asks:

text
Can this user access social capabilities?

rather than knowing every detail of the age-assurance API.

This gives you a single place to update when platform or regional rules evolve.

A simplified Declared Age Range request

Apple's current documentation uses __INLINE_CODE_0__ from the __INLINE_CODE_1__ framework.

A simplified example for a 13-year gate:

swift
import DeclaredAgeRange
import UIKit

func socialAccess(
    presentingFrom viewController: UIViewController
) async throws -> Bool {
    let response = try await AgeRangeService.shared.requestAgeRange(
        ageGates: 13,
        in: viewController
    )

    switch response {
    case let .sharing(ageRange):
        guard let lowerBound = ageRange.lowerBound else {
            // Below the lowest requested age gate.
            return false
        }

        return lowerBound >= 13

    case .declinedSharing:
        // Apply your documented fallback policy.
        return false
    }
}

This example is intentionally small.

A production implementation should also account for:

  • platform availability
  • regional eligibility
  • regulatory features
  • parental controls
  • errors/unavailability
  • policy on declined sharing
  • server-side feature enforcement where necessary

Do not copy one Swift snippet into production and call the age architecture finished.

Check whether age-related regulatory features apply

Apple's current documentation includes __INLINE_CODE_0__ and __INLINE_CODE_1__ to help apps understand whether age-related regulatory behaviours apply to the person using the app.

That matters because age assurance is increasingly region-dependent.

A robust policy layer can distinguish:

text
Platform age features available?
        ↓
Regulatory features required?
        ↓
Age range required/shared?
        ↓
Product age gate
        ↓
Feature access

Do not assume one global behaviour covers every region forever.

Apple's age assurance developer Q&A explicitly tells developers to evaluate applicable legal obligations and notes that framework availability and required behaviours can vary by region.

What should happen if age sharing is declined?

There is no universal answer for every app.

For the specific App Store declaration where you claim social media is disabled for users under 13, your fallback should not accidentally enable the social feature when the application cannot establish that the user meets the gate.

A conservative product policy might be:

text
13+ established
→ social feature enabled

Below 13
→ social feature disabled

Age unavailable / declined
→ social feature remains disabled
→ general non-social experience continues where appropriate

But the exact behaviour depends on:

  • applicable law
  • product design
  • account model
  • regional requirements
  • Apple's current platform behaviour

The important engineering principle is that __INLINE_CODE_0__ should be its own state.

Avoid:

text
unknown age
→ assume adult

unless you have a defensible requirement that explicitly supports that behaviour.

"Social media disabled under 13" must be a real feature boundary

A cosmetic UI hide is not enough when backend APIs still allow the same social actions.

Bad:

text
if under13:
    hide Feed tab

while these endpoints still work:

text
POST /posts
POST /comments
POST /likes
GET /discover

A stronger design is:

text
Age policy
    ↓
Trusted account/session policy
    ↓
Backend authorization
    ↓
Social endpoints

For consequential restrictions, enforce both:

  • user experience in the app
  • authorization in the backend

This matters especially when the same account can use multiple devices or clients.

Define what "social capability" means in your own product

Do not use one vague flag such as:

text
socialEnabled = false

if the product contains several independent capabilities.

A more useful policy matrix is:

CapabilityUnder 1313+
Browse general curated contentProduct decisionProduct decision
Public social feedRestrictedAvailable
Create public postsRestrictedAvailable
Like/reactRestrictedAvailable
Comment publiclyRestrictedAvailable
Repost/share user contentRestrictedAvailable
Direct messagingSeparate policySeparate policy
Private family/friend contentSeparate policySeparate policy

Apple's social-media declaration and your broader safety policy are related, but they are not necessarily identical.

A direct-message feature, for example, should be evaluated under the questionnaire's separate messaging/chat concepts as well as your own safety controls.

What should Flutter apps do?

Flutter apps still need to satisfy Apple platform requirements.

If your Flutter plugin ecosystem does not yet expose the Declared Age Range API in the exact way your product needs, keep the native Apple integration behind a platform boundary.

A clean architecture is:

text
Flutter widgets
        ↓
AgePolicyService (Dart)
        ↓
Platform interface
        ↓
iOS implementation
        ↓
DeclaredAgeRange framework

The Dart layer can expose product states:

dart
enum SocialAccess {
  allowed,
  restrictedForAge,
  unavailable,
  needsResolution,
}

The Flutter UI consumes __INLINE_CODE_0__.

It does not need to know Apple's native enum names.

That gives you two advantages:

  1. the iOS implementation can change without rewriting the product UI
  2. Android can later use its own age-signal adapter behind the same product policy

This is particularly useful for cross-platform apps because Google Play and Apple now expose different age-assurance mechanisms.

Do not force Android and iOS into one raw age API

A cross-platform app should share policy, not pretend the platform APIs are identical.

Good:

text
                    Product Age Policy
                           ↓
                 SocialAccess decision
                    ↙             ↘
Apple adapter                     Android adapter
Declared Age Range                Play age signal

Weak:

text
one generic "ageResponse" object
containing every field from both SDKs

The app's domain should care about questions such as:

text
May this user access social discovery?
Does this feature require parental approval?
Is age status unresolved?

not whether one platform called the field __INLINE_CODE_0__ and another used a different enum.

Does a login birthday replace Declared Age Range?

Not for Apple's specific "social media disabled for users under 13" declaration if Apple says the Declared Age Range API must be used at minimum.

Your own account birthday can still have product or legal uses.

But do not assume:

text
We already ask DOB at signup
→ no need to integrate Apple's API

when choosing an App Store declaration that explicitly references the platform API.

Treat the App Store questionnaire choice and your internal account system as separate requirements that must be reconciled.

How should you test the under-13 path?

Apple provides age-assurance sandbox testing.

The current sandbox documentation says developers can test age-range scenarios, location-related restrictions, approval-state changes, and consent revocation.

Your test plan should include more than one successful 13+ response.

Test:

Under 13

Expected:

text
Social feed unavailable
Posting unavailable
Social interactions unavailable
Backend rejects restricted actions
General allowed experience remains usable

13+

Expected:

text
Social features enabled according to product policy

Age unavailable or declined

Expected:

text
Explicit fallback
No accidental adult default

Parental-control change

Expected:

text
App reacts to the current platform signal/policy

Existing logged-in account

Expected:

text
Old account does not bypass a newly introduced social gate

Multi-device account

Expected:

text
Server-side policy and client state stay consistent

A submission can pass metadata review while the real product enforcement remains fragile.

Test the feature boundary.

Review existing apps before the next update

Because the declaration is required when submitting new versions or updates, a maintained app can discover the issue during an otherwise unrelated release.

Create an inventory now.

For every iOS/iPadOS app, record:

text
App
Social/UGC features
Messaging features
Public feed/discovery?
Likes/comments/shares?
Under-13 audience?
Current age rating
Questionnaire reviewed?
Declared Age Range needed?
Engineering change required?

This is especially important for white-label or older apps.

A small community feature added years ago may now matter even if the current release only changes analytics or fixes a crash.

Product teams should review ambiguous features with concrete screenshots

Do not debate "Are we a social app?" in the abstract.

Open the product and classify actual surfaces.

For example:

text
Screen: Community
- public posts? yes
- discovery feed? yes
- comments? yes
- likes? yes
- share/repost? no

That is far more useful than:

text
"We are mainly a fitness app."

Apple's definition is capability-based, not marketing-positioning-based.

What if you do not serve users under 13?

Then the product may not need the more complex "social media disabled under 13" architecture merely to achieve a lower rating.

If social media exists and your app is genuinely for users 13+, declaring the capability and accepting the corresponding minimum rating may be the simpler and more accurate design.

Do not implement an age-gating subsystem solely to manufacture a lower App Store rating if the product does not actually need an under-13 experience.

The decision should follow the product audience:

text
Real audience 13+?
→ Declare accurately
→ Keep architecture simpler

Meaningful under-13 experience?
→ Separate social capability
→ Implement age-aware gating correctly

The minimum age rating is not the only rating input

Declaring social media can establish a minimum 13+ rating, but the overall age rating questionnaire contains other content descriptors and capabilities.

An app can receive a higher rating due to other content.

Apple's current age-rating system includes region-specific differences as well.

For example, Apple's age rating definitions show that Australia can display different region-specific ratings for certain capabilities.

So avoid this assumption:

text
Social media = exactly 13+ everywhere

A better statement is:

Social media can establish a minimum rating under Apple's global framework, while other questionnaire answers and region-specific requirements can result in different or higher displayed ratings.

Check App Store Connect's actual calculated ratings after updating the questionnaire.

Does changing the questionnaire automatically change your app code?

No.

App Store Connect metadata cannot enforce your social-media feature boundary.

If you select:

text
Social Media Disabled for Users Under 13

the development team needs to ensure the product actually matches that declaration.

This is a useful release-management pattern:

text
App Store declaration
        ↓
Product requirement
        ↓
Engineering acceptance criteria
        ↓
Test cases
        ↓
Release evidence

Treat the declaration as part of the product specification.

A release checklist for September 2026

Before the next App Store submission:

  • Open the current age rating questionnaire in App Store Connect.
  • Inventory UGC, feed, discovery, likes, comments, shares and reposting.
  • Separate social media from messaging/chat and other UGC concepts.
  • Decide whether the app genuinely contains social media capabilities.
  • Confirm whether the product is intended to support users under 13.
  • If social media is available normally, accept the resulting rating implications.
  • If social media is disabled under 13, integrate the Declared Age Range API at minimum.
  • Define an explicit unknown/declined-age fallback.
  • Enforce important social restrictions server-side as well as in UI.
  • Test under-13, 13+, unavailable and changed-state scenarios.
  • Re-check the calculated global and region-specific age ratings.
  • Verify the Social Media descriptor shown by the App Store configuration.
  • Document the questionnaire decision so future release managers do not guess.

Common mistakes

Mistake 1: "We are not a social-network company, so we answer No"

The questionnaire is based on capabilities, not your company category.

Audit feeds and UGC interactions.

Mistake 2: Treating any UGC as automatically social media

Apple has separate concepts for UGC, messaging/chat and social media.

Classify the actual feature behaviour.

Mistake 3: Selecting "disabled under 13" without implementing the platform age check

Apple's current definitions say the Declared Age Range API is required at minimum for that option.

Mistake 4: Hiding one tab but leaving social APIs available

Age restrictions should be enforced at the trusted authorization layer where the feature is consequential.

Mistake 5: Assuming unknown age means 13+

Model unknown/declined/unavailable separately.

Mistake 6: Collecting full birthdays unnecessarily

Use age ranges when a range is sufficient and platform requirements point toward range-based age assurance.

Mistake 7: Updating App Store metadata without testing existing accounts

Older users and stored sessions can bypass new UI assumptions unless the policy is applied consistently.

A decision matrix

Product situationPractical starting direction
No user-created/discoverable social contentReview questionnaire and declare accurately
Public UGC feed with likes/comments/sharesStrong social-media characteristics
Direct private messaging onlyReview Messaging/Chat separately; do not assume it equals a social feed
Community/feed product intended only for 13+Declare social media; accept minimum-rating implications
General app serves under-13 users but social feed must be restrictedUse under-13 social restriction path + Declared Age Range
Flutter app with native API gapAdd an iOS platform adapter behind a Dart policy service
Feature restriction only exists in UIAdd backend enforcement where the action matters
Unsure because feature is ambiguousCompare actual screens/interactions against Apple's current definitions

FAQs

Is the App Store social media declaration required in September 2026?

Yes. Apple says that starting September 2026, developers must indicate whether an app or game includes social media capabilities to submit new apps or updates to the App Store or submit for notarization for alternative marketplace distribution.

What counts as social media under Apple's age rating questionnaire?

Apple describes social media as redistributing, amplifying, or interacting with user-generated content through a social feed or similar discovery method that visibly spreads content to many users. Likes, comments, shares, reposts and feed-style discovery are relevant examples.

Does social media automatically make an iOS app 13+?

Apple says apps that declare social media capabilities receive a minimum 13+ age rating. Other content or regional rules can result in different or higher ratings.

Can an app keep an under-13 audience and still have social features for older users?

Yes, Apple provides a declaration for Social Media Disabled for Users Under 13. For that path, Apple says the app must at minimum use the Declared Age Range API to check age ranges before enabling social capabilities for older users.

Does a Flutter app need the Apple Declared Age Range API?

If the Flutter app chooses an App Store path that requires the Declared Age Range API, using Flutter does not remove that platform requirement. Implement the Apple framework through an appropriate plugin or native platform integration and expose a product-level policy to Dart.

Is a private chat app automatically "social media"?

Not necessarily. Apple's questionnaire distinguishes Messaging and Chat from Social Media and User-Generated Content. Review whether the product redistributes/amplifies UGC through a social feed or similar discovery mechanism rather than classifying it only by the presence of communication.

Conclusion

Apple's September 2026 change is not simply a new checkbox.

It forces product teams to define what their social features actually are.

The correct sequence is:

text
Audit UGC and interaction features
        ↓
Classify social-media capability
        ↓
Update App Store Connect accurately
        ↓
13+ product?
→ declare social media

Under-13 product experience required?
→ disable social features below 13
→ use Declared Age Range
→ enforce the boundary in app + backend

The most important mistake to avoid is choosing a questionnaire answer that the product does not actually enforce.

For many apps, accepting a 13+ minimum rating is the cleanest design.

For apps that genuinely serve younger users, age-aware social gating becomes an application architecture concern, not just App Store metadata.

If your iOS or Flutter app needs age-aware feature gating, App Store migration work, or a backend that enforces social-access rules consistently across devices, Softotic's mobile app development service can handle the app integration, while custom software development can support the authorization and policy backend.

Sources and references