# ITMS-91064: correggere “Invalid tracking information”

> ITMS-91064 Invalid tracking information: cosa significa, perché il manifesto della privacy viene rifiutato e come correggerlo in un'app Expo.

Pagina originale: [ITMS-91064: correggere “Invalid tracking information”](https://devoria.fr/it/blog/itms-91064-invalid-tracking-information)
Autore: [Mehdi Azizi](https://devoria.fr/it/mehdi-azizi)
Pubblicazione: 2026-10-16
Ultima revisione dei contenuti: 2026-10-16


ITMS-91064 è un rifiuto automatico di Apple, inviato via e-mail dopo la consegna della tua build. Significa che le due chiavi di tracciamento del tuo manifesto della privacy si contraddicono. **La correzione: mettere d'accordo `NSPrivacyTracking` e `NSPrivacyTrackingDomains`**, poi rifare una build.

L'ho preso su TradaZen, la mia app di allenamento al trading, dopo aver aggiunto uno strumento di misurazione pubblicitaria. Ecco la causa e la correzione.

## Cosa significa l'errore ITMS-91064?

Il messaggio si intitola "ITMS-91064: Invalid tracking information". Riguarda un file `PrivacyInfo.xcprivacy`, il manifesto della privacy che ogni app e ogni SDK può includere. Questo file contiene in particolare due chiavi legate al tracciamento, nel senso di App Tracking Transparency:

- `NSPrivacyTracking`: vero se l'app o l'SDK usa dati per il tracciamento.
- `NSPrivacyTrackingDomains`: l'elenco dei domini contattati per questo tracciamento.

Apple descrive le tre combinazioni rifiutate nella sua nota tecnica sui [manifesti non validi](https://developer.apple.com/documentation/technotes/tn3181-debugging-invalid-privacy-manifest):

- `NSPrivacyTracking` è vero e l'elenco dei domini è vuoto. Bisogna compilare l'elenco. Era il mio caso.
- `NSPrivacyTracking` è vero ma un dominio è scritto male. Un dominio si scrive senza percorso né barra finale.
- Ci sono domini elencati mentre `NSPrivacyTracking` è falso. Bisogna togliere l'elenco.

La regola di fondo è nella documentazione sui [manifesti della privacy](https://developer.apple.com/documentation/bundleresources/privacy-manifest-files): quando `NSPrivacyTracking` è vero, bisogna fornire l'elenco dei domini.

**L'e-mail di Apple indica il nome e il percorso del file difettoso.** Leggi quel percorso: ti dice se il problema viene dal manifesto della tua app o da quello di un SDK incluso.

Come per gli altri errori ITMS, non è il rifiuto di un reviewer. Il controllo è automatico, alla consegna della build, e la build viene scartata.

## Perché succede: un manifesto per target

Ecco la trappola. Un SDK spesso include il proprio manifesto, con i suoi domini. Potresti pensare che basti. Ma anche la tua app ha il suo, e **nel mio caso Apple ha rifiutato proprio quello dell'app**.

Il mio caso, il 21 luglio 2026. Collegando uno strumento di misurazione pubblicitaria a TradaZen, avevo dichiarato `NSPrivacyTracking: true` nella configurazione dell'app, il che è corretto. Ma non avevo aggiunto `NSPrivacyTrackingDomains`. Il manifesto dell'SDK era completo. Quello dell'app, generato da Expo a partire dalla mia configurazione, diceva "vero" con un elenco vuoto. La build è stata rifiutata durante l'elaborazione.

**La lezione**: il manifesto dell'SDK non copre quello della tua app. Se dichiari tracciamento nella configurazione, dichiari anche i domini.

## Correggere ITMS-91064 in un'app Expo

Con Expo, il manifesto dell'app si imposta nella configurazione, sotto `ios.privacyManifests`. Il principio è nella [documentazione di Expo sulla privacy](https://docs.expo.dev/guides/apple-privacy/), e la chiave nel [riferimento della configurazione](https://docs.expo.dev/versions/latest/config/app/).

1. **Ritrova i domini di tracciamento dell'SDK.** Copia l'elenco dal manifesto della versione inclusa nella tua build, non da quello dell'ultima versione online: possono essere diversi. Non inventarli.
2. **Aggiungili alla tua configurazione.** I due domini qui sotto sono esempi da sostituire:

```json
{
  "expo": {
    "ios": {
      "privacyManifests": {
        "NSPrivacyTracking": true,
        "NSPrivacyTrackingDomains": [
          "example-tracking-domain.com",
          "other-tracking-domain.com"
        ]
      }
    }
  }
}
```

3. **Controlla il file generato prima di pagare una build**, se la tua cartella `ios` è generata da Expo e ignorata da git. Lancia `npx expo prebuild -p ios`, poi apri il file `PrivacyInfo.xcprivacy` creato nella cartella `ios`. Deve contenere `NSPrivacyTracking` a `true` e l'elenco completo dei domini.
4. **Rifai una build e rimandala.** Il manifesto fa parte del binario: un aggiornamento remoto non lo modifica.

Attenzione al passaggio 3: questo comando può eliminare e poi ricreare la cartella `ios`. Se ci hai fatto modifiche a mano, non lanciarlo sul tuo progetto. Lavora su una copia.

Se la tua app non fa alcun tracciamento, la strada è più breve: imposta `NSPrivacyTracking` a `false` e togli l'elenco.

## Cosa cambiano questi domini per i tuoi utenti

Dichiarare questi domini non è una formalità. Secondo la documentazione di Apple, se l'utente non ha accettato il tracciamento nella finestra di App Tracking Transparency, le richieste verso questi domini falliscono. È il comportamento previsto: il tracciamento parte solo se la persona ha detto sì.

La tua scheda App Store deve raccontare la stessa cosa. Se il tuo manifesto dichiara tracciamento, anche le dichiarazioni sulla privacy della scheda e la tua informativa sulla privacy devono dirlo. Altrimenti rischi poi il rifiuto di un reviewer, in base alle guideline 5.1.1 o 5.1.2: i dettagli sono in [informativa sulla privacy di un'app](https://devoria.fr/it/blog/privacy-policy-app-ios-apple).

## Inviare la tua build senza brutte sorprese

Gli errori ITMS si correggono in fretta quando sai leggerli. I rifiuti che arrivano dopo richiedono più distacco: il metodo è nella pagina [app rifiutata da Apple](https://devoria.fr/it/expertise/app-rifiutata-da-apple), e i motivi più frequenti sono in [perché Apple rifiuta un'app](https://devoria.fr/it/blog/app-rifiutata-da-apple-perche-casi-reali).

Per controllare il tuo progetto prima dell'invio, l'[Apple Review Kit](https://devoria.fr/it/kits/review-apple) riunisce la mia checklist e delle skill Claude Code che rileggono il tuo progetto. Se l'invio si blocca e vuoi uno sguardo umano, [prenota un'ora con me](https://devoria.fr/it/coaching): riprendiamo il tuo progetto in videochiamata, sul tuo schermo. E se stai preparando la tua prima uscita, [fai la tua diagnosi gratuita](https://devoria.fr/it/diagnostic): rimette in ordine i passaggi e ti invia la mia checklist anti-rifiuto Apple.

## Domande frequenti

### ITMS-91064 è un rifiuto di App Review?

Non nel senso di un reviewer umano. È un controllo automatico fatto sulla build alla consegna, prima della revisione. La build viene scartata: bisogna correggere il manifesto della privacy e inviare una nuova build.

### Cosa bisogna mettere in NSPrivacyTrackingDomains?

I domini che la tua app o i tuoi SDK contattano per il tracciamento. Copia quelli che l'SDK elenca nel manifesto della versione inclusa nella tua build. Un elenco vuoto con `NSPrivacyTracking` a `true` è una delle combinazioni che Apple rifiuta.

### Il manifesto del mio SDK non basta?

No. Su TradaZen il manifesto dell'SDK era completo e la build è stata comunque rifiutata: quello dell'app dichiarava tracciamento senza alcun dominio. Se la configurazione della tua app dichiara tracciamento, deve anche elencare i domini.

### La mia app non fa tracciamento: cosa devo fare?

Imposta `NSPrivacyTracking` a `false` nella configurazione e togli l'elenco dei domini. Poi controlla che la tua scheda App Store e la tua informativa sulla privacy dicano la stessa cosa.

### Si può correggere ITMS-91064 senza rifare una build?

No. Il manifesto della privacy fa parte del binario inviato ad Apple. Bisogna correggere la configurazione, rifare una build e rimandarla.


## Il tuo progetto

[Apple Review Kit](https://devoria.fr/it/kits/review-apple): La checklist review App Store che uso, i miei rifiuti di Apple corretti, le note per il revisore e due skill Claude Code che rileggono la tua app. 29 €.

[iOS Kit](https://devoria.fr/it/kits/ios): Crea la tua app iPhone con Claude Code: lo Starter Code delle mie app, gli skill che verificano il suo lavoro, e l'Apple Review Kit, l'App Store Screenshots Kit e l'ASO Kit. 129,99 €.
