Fantasia

Last updated: 5 October 2026

Privacy

This is an English translation of the German privacy policy. If the two versions differ, the German version applies.

Controller and contact

Fantasia is provided by Michael Mühlberger. For questions about privacy, you can reach me at support@apionflow.com. Fantasia is a private dream journal. You do not need a user account with a name or email address. There is no advertising and no tracking. Journal entries are never transferred to the developer automatically. Only when you create an image with Fantasia Premium or the free images to try does the Fantasia server pass the content needed for it on to OpenAI, without storing it.

What data Fantasia processes and why

The app processes the dream texts you type or dictate, titles, date and time, optional voice memos and images, marked terms, feelings, tags, notes and saved links, as well as your app settings. This data is used to save, display, edit, find and review your own entries. Term recognition, pattern overviews, dictation cleanup and moon phase calculation happen locally on your device. The developer does not receive the content of your journal automatically.

Storage and iCloud

Your entries are stored on your device. A dream you are capturing and have not saved yet is kept as a draft on this device only, so it is not lost if iOS closes the app. The draft is not synced and is deleted when you save or discard it. If iCloud is turned on for Fantasia, your journal data, including images and saved voice memos, is synced through Apple CloudKit in the private database of your iCloud account. The developer cannot see this private database. You can turn off iCloud for Fantasia in the system settings. The use of iCloud is also subject to Apple’s privacy policy.

People and “About me”

You can give a person in Patterns a photo and other words, such as “Mom”, and add your first name and a photo of yourself under “About me”. Like the rest of your journal, this is stored on your device and, if iCloud is on, in your private iCloud database, and it is included in a backup of all dreams. Photos are made smaller and stored without metadata when added. Besides the cut-out face, the whole chosen photo is stored so you can change the crop later. Photos of people are never included when you share a dream; your first name appears there as the sender if you give one.

Sharing dreams, backups and reminders

When you share a dream, Fantasia creates a file on your device with its title, text and date and – only if you choose so – images, voice memo, feelings, tags and the first name you enter. Marks and your notes on terms are never included. You decide who receives the file and through which service, for example Messages, WhatsApp, Mail or AirDrop; that service’s terms apply. A dream you receive is only saved once you choose to keep it. A backup of all dreams is also a file on your device that you store or pass on yourself. It contains your whole journal, so keep it safe. The morning reminder is a local notification on your iPhone; no data is transferred for it. The developer receives no data in any of this.

Microphone and speech recognition

Before you dictate, Fantasia asks for the required system permissions. Recognition happens on the device where possible. With the older speech recognition method, Apple may process audio if on-device recognition is not available. Optionally, Fantasia keeps the original recording as a voice memo in your journal. Voice recordings are never sent to OpenAI. You can withdraw microphone and speech recognition permissions in the system settings.

Optional image generation: recipient and data

Images are created by the AI service OpenAI. Fantasia offers two ways: with Fantasia Premium and the free images to try, the app sends the content to OpenAI through the Fantasia server (see the next section). With your own OpenAI access code, it sends the content directly to api.openai.com. Both happen only when you start an image, and always over encrypted HTTPS connections. Under OpenAI’s terms, the contracting party for API customers in the European Economic Area and Switzerland is OpenAI Ireland Ltd.; elsewhere, another OpenAI entity may be responsible.

If you choose “One scene”, only your description of the scene is sent as personal text, limited to 2,500 characters. With “Whole dream”, the dream text is sent instead, limited to 6,000 characters. If you turn on “Match the style of the image shown”, the image currently shown for this dream is also sent as a style reference. With “People in the picture”, photos of people and their names are also sent (at most four), so the image shows the people as they really look and knows who is who. This includes the people you gave a photo in Patterns who appear in the dream or the scene, your own photo with your first name if you allowed it – under “About me” or with “Me” under “People in the picture” –, and photos you pick for a single image. Before every image, Fantasia shows who goes along with face and name; anyone can be left out with a tap. The photos are made smaller and re-encoded without metadata beforehand, in particular without location and capture time. Photos show identifiable people; only use photos of people who agree to this. Fantasia adds general design instructions and technical image parameters. Other journal entries and voice memos are never included.

With your own access code, the API key you entered is sent to OpenAI for authentication and links the request to your OpenAI account. OpenAI also receives technically necessary connection data, such as your IP address. The key is stored locally in the device keychain and is not synced through iCloud. Using the API may cause charges in your OpenAI account.

Fantasia Premium, free images and the Fantasia server

Fantasia Premium is a subscription with images for every month; image packs are also available. Payment is handled by the App Store. Apple processes your payment data under its own terms and privacy policy. The developer receives neither your name, nor your email address, nor any payment details.

So that your balance can be assigned to you, Fantasia creates a random identifier with your first purchase or when you receive the free images. It is stored in the keychain and synced to your devices through your iCloud Keychain, so your balance stays with you on a new iPhone. Apple passes this identifier on to the Fantasia server with your purchases. The app shows its first eight characters as a support code under Settings → Image generation, so support can help you if something goes wrong. The identifier does not reveal who you are.

A new iPhone receives three free images to try, once. When you first want to create an image, Fantasia asks the Fantasia server for them. So that the free images are given only once per device, Fantasia uses Apple’s DeviceCheck service: the app creates a short-lived, encrypted token, which the server passes on to Apple. Apple then keeps a marker for your device and this developer saying that the free images were given. It remains even after the app is deleted. The developer does not learn which device it is and receives no information about you. The server does not store the token, only, under your identifier, when the free images were given.

The Fantasia server is operated by Hetzner Online GmbH in Germany. Hetzner processes the data on the developer’s behalf as a processor. Under the random identifier, the server stores: your balance; whether and when you received the free images; the details of your purchases signed by Apple (product, transaction number, purchase and expiry date, whether it was a test purchase), so that no purchase counts twice and renewals and refunds are taken into account; and for each image the time, whether it succeeded, the number of photos sent along and its cost at OpenAI, for accounting and to prevent abuse. These records of individual images are deleted automatically after 13 months. Apple also informs the server about renewals, cancellations and refunds of your subscription.

When you create an image, the server receives your content, passes it on to OpenAI and returns the finished image to the app. It stores no dream texts, photos or images and does not log IP addresses. OpenAI receives the request from the Fantasia server and therefore not your IP address. The server uses the developer’s OpenAI account for this, in which no data sharing for training is enabled. Each image is deducted from your balance; if it fails, it is credited back to you.

Your consent to image generation

Before Fantasia sends anything to OpenAI for the first time, the app explains what will be sent — the description of the scene or the dream text, and with “Match the style of the image shown” turned on also the image shown, and with “People in the picture” also their photos and names — and previews the content of the first request. Only when you tap “Agree and create image” do you allow the transfer. Tapping “Cancel” or closing the sheet sends nothing. Your consent is then stored on this device and applies to further images; directly below the generate button, the app states each time what will be sent. Your consent is not synced through iCloud. You can withdraw it at any time under Settings → Image generation; Fantasia will then ask again before the next transfer. If what is sent, or to whom, ever changes, Fantasia also asks again. Fantasia asks separately for Fantasia Premium and for your own access code. Neither a purchase nor saving an API key is consent to transfer your content. Your journal remains fully usable without consent.

You can refuse future transfers at any time and remove the saved API key under Settings → Image generation. A request that has already been sent cannot be recalled.

Processing and protection at OpenAI

OpenAI processes the transferred content to create the image and to prevent abuse. According to OpenAI’s documentation, API content is not used for model training by default unless the API account holder opts in to data sharing. Safety logs may generally retain content for up to 30 days; legal and safety-related exceptions are possible. Fantasia does not opt in to data sharing for training and cannot guarantee immediate deletion at OpenAI.

To protect transferred personal data, OpenAI’s API terms and the data processing addendum they contain provide in particular for purpose limitation, confidentiality, technical and organisational security measures, and comparable obligations for subprocessors. These obligations protect further processing by the recipient. They do not mean that external processing is the same as purely local storage. Processing may also take place outside Switzerland and the EEA; the addendum describes the safeguards provided for such transfers. The terms and settings of the API account used are decisive: with your own access code those of your account, with Fantasia Premium those of the developer.

Photos, links and support

Fantasia only asks for permission to add to Photos when you explicitly save an image there. You add your own images through the system photo picker: Fantasia only receives the photos you select and can neither see nor search the rest of your library. When added, images are resized and saved again without metadata — in particular without location and capture time. Like all images, they are stored on your device and in your private iCloud, and are only sent to OpenAI if you explicitly use one as a style reference. When you open a saved link or a privacy link, the website operator receives the usual connection data. If you contact support by email, your sender address, your message and any attachments you choose to send are processed to handle your request. Please only send the information your request needs.

Retention, deletion and your rights

Journal entries are kept until you delete them. You can remove individual dreams, voice memos and images in Fantasia. You also manage iCloud data and device backups in Apple’s system settings; images you exported to Photos are deleted there separately. If needed, remove your API key in Fantasia, because deleting the app does not reliably remove all keychain data.

Your balance and purchases remain stored on the Fantasia server as long as you can use them and as long as they are needed for refunds and statutory retention obligations. If you would like them deleted earlier, write to support@apionflow.com and include your support code; any remaining balance is then forfeited. You cancel an active subscription in your iPhone’s subscription settings.

Deleting an entry in Fantasia does not retroactively delete content already sent to OpenAI. For access or deletion requests about your OpenAI account, use OpenAI’s privacy contact. For data you sent to Fantasia support, contact support@apionflow.com. Support correspondence is only kept as long as needed to handle your request or to meet legal obligations. Depending on the applicable law, you have in particular the right of access, rectification, erasure, restriction, data portability, objection and to lodge a complaint with a data protection authority.

Further information