Legal

Privacy Policy

Effective date: 25 July 2026

Service provider and data controller. Social Narratives is operated by Huszár Balázs e. v., of Harodik u. 60., 8500 Pápa, Hungary (individual entrepreneur registration number: 44599961; tax number: 67272343-1-39; EU VAT number: HU67272343) (“Social Narratives”, “we”, “us”). Our privacy contact is support@socialnarrative.app.

This Privacy Policy explains how we process personal information when you use the Social Narratives website and iOS app (together, the “Service”). The app creates personalised narratives from information a user provides about a situation and, optionally, a child profile. The Service is intended to be used by a parent, guardian, educator, or other adult authorised to act for a child; it is not designed for children to use independently.

1. At a glance

2. Information we process

Information you choose to enter in the app

To create and personalise a story, you enter a situation and may select a child profile. A profile can contain a first name, age, pronouns, optional support needs, and optional avatar-related appearance choices, including skin tone, hair colour and style, eye colour, and glasses. The app sends the selected profile details, its internal identifier, preferred story language, illustration preference, and the situation with a generation request.

Support needs are optional, selected from a fixed list rather than entered as free text. They can include autism, ADHD, anxiety, sensory needs, communication needs, a preference for routines, difficulty with change, or emotional regulation. You can create a story without selecting any support need.

We ask you to enter only the information needed for the story. In particular, please do not include a child’s full address, school identifiers, medical-record numbers, contact details, or detailed medical history in the situation field.

Generated content

We process the generated title, story text, illustration prompt, and, where requested, the generated illustration. The app stores this content with the related situation, selected profile reference, language, favourite/read status, and creation/update timestamps.

Device and service information

The app creates a random installation identifier and request identifiers. These are not an account name, but they are used to associate a story job and its status with the same app installation. We also process job status, read status, timestamps, error messages, and technical information needed to operate the generation service.

Notifications

If you grant notification permission, Apple issues a device push token. The app stores the token locally and registers it with our backend together with the installation identifier, iOS platform, and sandbox/production environment. A completion notification may include the generated story title; notification content may therefore be visible on a device’s lock screen or notification centre depending on the device settings you choose.

Settings and local preferences

The app stores the selected interface/story language, text-to-speech voice and reading speed, iCloud-sync preference, most recently selected profile, illustration preference, and related local app state. The reviewed app code does not collect precise location, contacts, camera roll, microphone recordings, or health data directly from iOS system frameworks.

Credits, purchases, and Apple Account linking

The app creates a random credit-wallet identifier, installation credential, and Support ID to operate your credit balance and help us locate a wallet for support. If you choose to link the wallet to your Apple Account, we verify Apple’s identity token and store only a SHA-256 hash of its stable subject identifier. We do not store the raw Apple subject identifier, Apple Account email address, or name for this purpose.

For credit-pack purchases and subscriptions, we receive and process the App Store transaction identifier, original transaction identifier where applicable, product identifier, purchase time, subscription expiry or renewal time, App Store environment, credit allocation and balance, and refund or revocation status. We verify the signed transaction with Apple and do not store the raw signed transaction. Apple may also send us server notifications about subscription purchases, renewals, refunds, and related events. We keep an operational ledger of credit grants, spending, refunds, account changes, and support adjustments. We do not receive or store your payment-card number or other payment-method details.

Website analytics

Google Consent Mode is enabled on the website. Before you allow analytics cookies, Google Analytics may receive limited cookieless measurement and consent-state pings, such as page information, timestamp, browser/device information, and a consent signal. These pings do not use Google Analytics cookies or a persistent analytics identifier. If you allow analytics, Google Analytics may additionally process pages viewed, interactions, browser and device information, approximate location derived from IP address, and an analytics cookie identifier. We use this only to understand use of the public website. We do not enable Google Signals or advertising-personalisation features.

Waiting list

If you join the waiting list, we process the email address you provide, your consent checkbox response, the submission time, and limited technical submission information supplied by Formspree. We use this only to send Social Narratives launch news and early-access updates.

3. Why we process information and our legal bases

Where the GDPR, UK GDPR, or similar law applies, we process information for the following purposes:

An optional support-need selection, such as autism, may be sensitive personal information when connected to a child. You decide whether to select it. Selecting it and then submitting a story request is an affirmative action that authorises our limited processing of that selection to tailor the requested story and operate the short-lived generation job. We do not use it for advertising, to make medical or educational decisions, or to create a server-side child profile. You may remove a selection at any time, and should select one only if you are authorised to provide it and it is helpful for the requested story.

4. How the Service uses information

When a story is requested, the app sends the situation, preferred language, whether an illustration is requested, and—if a profile is selected—the profile’s first name, age, pronouns, selected support needs, internal profile identifier, and optional appearance descriptors to our backend. The backend queues the task, calls OpenAI to generate the story, and, if chosen, calls OpenAI to generate the illustration. Appearance descriptors are used only to help describe the child for an illustration.

The backend stores the request and generated response temporarily so the app can check status, retrieve a completed result, cancel a request, reconcile read status, and retrieve a generated image. It does not maintain a separate server-side child profile. The app then saves the completed story locally. A PDF created for printing or sharing is made in the device’s temporary directory, marked to be excluded from backup, and the app removes stale PDF exports after 24 hours.

5. Where information is stored and how long we keep it

On your device and in iCloud

Profiles, stories, images, and settings are stored in the app’s local SwiftData store. iCloud/CloudKit sync is enabled by default on first use. When enabled, this local app data is synchronised to the user’s private iCloud container associated with the user’s Apple Account. You can turn sync off in Settings. Turning sync off prevents future sync; it does not itself guarantee deletion of information already stored in iCloud. You can delete profiles, stories, or all local app data from the app’s settings. Apple’s own retention and deletion practices apply to data in iCloud.

Our AWS backend

Waiting-list submissions

Formspree retains waiting-list submissions according to the plan and account configuration that applies to our form. We may retain the email and consent record in our support mailbox until you unsubscribe or ask us to delete it, and otherwise for no longer than 12 months after the first public launch notice.

6. Service providers and disclosures

We disclose information only as needed to run the Service, comply with law, or protect rights and safety. The current architecture uses the following providers:

We may also disclose information to professional advisers, regulators, law-enforcement bodies, courts, or other third parties when required by law or necessary to protect the Service, our users, or others. We do not sell personal information or disclose it for cross-context behavioural advertising.

7. International transfers

Using the Service may involve processing outside your country, including in the United States through AWS, OpenAI, Formspree when you join the waiting list, and GitHub Pages when you visit the website. Where a transfer of personal information from the EEA, UK, or Switzerland requires a transfer mechanism, we use an applicable adequacy decision, standard contractual clauses, the UK Addendum/IDTA, or another lawful mechanism, together with supplementary safeguards where appropriate.

8. Security

We use technical and organisational measures designed to protect information, including HTTPS endpoints, restricted S3 access, S3 server-side encryption, Secrets Manager for backend credentials, and log-redaction controls. No method of transmission or storage is completely secure. Please protect your device, Apple Account, and any shared PDFs, and avoid including more personal information in a request than is necessary.

9. Your choices and rights

You can manage local profiles and stories in the app, turn iCloud sync on or off, manage notification permission in iOS Settings, and delete local data through the app. You can also delete your credit account through the app; this permanently disables that wallet and discards its remaining credits, and does not cancel an App Store subscription. You can manage or cancel an App Store subscription through your Apple Account settings. Deleting local data does not immediately delete an already-created backend job record; those records expire automatically after the period described above. You can withdraw website-analytics consent at any time through Cookie settings in the website footer, and withdraw waiting-list consent by contacting us or using an unsubscribe option in an update. If you are in the EEA, UK, or another jurisdiction with applicable rights, you may have the right to request access, correction, deletion, restriction, portability, or to object to certain processing; where processing is based on consent, you may withdraw consent at any time without affecting prior processing.

To exercise a right, contact support@socialnarrative.app with the subject line “Privacy request.” Because the Service has no user account, we may need information that helps us identify the relevant installation or request before we can act. We may request reasonable verification and will explain if a request cannot be fully fulfilled because data is no longer available or a legal exception applies. You may also lodge a complaint with the data-protection authority in your habitual residence, place of work, or place of the alleged infringement.

10. Children

Adults are responsible for deciding whether they have authority to enter a child’s information and for using the minimum information necessary. We do not knowingly create accounts for children, because the app does not use accounts. If you believe that information about a child has been submitted without appropriate authority, contact us so that we can assess and address the request.

11. Website data and cookies

The website uses a small local-storage setting to remember your analytics choice. We do not load Google Analytics, use advertising pixels, remarketing, or cross-context behavioural advertising unless you allow analytics.

Your cookie choices

When you first visit the website, you can choose Allow all or Essential only. There are currently no advertising, marketing, or personalisation cookies on the website, so Allow all enables only Google Analytics cookies. Essential only does not load Google Analytics or set Google Analytics cookies or persistent analytics identifiers. You can change your choice at any time through Cookie settings in the website footer.

Essential storage

We store your choice in your browser’s local storage under social-narratives-analytics-consent. This is necessary to remember whether optional analytics may load and is not used to track you across websites. It remains until you change the choice or clear your browser storage.

Optional analytics cookies

Only after you allow analytics, Google Analytics 4 may set the cookies below. We do not enable Google Signals, advertising-personalisation, remarketing, or advertising cookies.

CookiePurposeDefault duration
_gaDistinguishes visitors for website analytics.Up to 2 years
_ga_<container-id>Persists website analytics session state.Up to 2 years

Browser limits may shorten these durations. Google documents its GA4 cookie use and default durations here. Selecting Essential only through Cookie settings prevents Google Analytics from loading on future page visits and removes Google Analytics cookies that are accessible from this website.

The public website is hosted on GitHub Pages. GitHub and supporting internet service providers may process limited technical request data, such as IP address, browser information, requested URL, and time of request, to deliver and secure the website. The Service may link to third-party sites, including Apple, Google, and OpenAI. Their privacy practices are governed by their own notices.

12. Changes to this Policy

We may update this Policy when the Service or legal requirements change. We will post the updated version here and revise the effective date. If a change materially affects how we process information, we will provide additional notice where required by law.

13. Contact

Huszár Balázs e. v.
Harodik u. 60.
8500 Pápa
Hungary
support@socialnarrative.app