Privacy Policy
Last updated: November 13, 2026
JoyMeals is an app for keeping your recipes. To do that, we need a few pieces of data from you. This page explains which ones, why, where they are stored, how long we keep them and what you can do about it.
JoyMeals is available for iPhone and iPad, on the App Store, and for Android, on Google Play. What Apple or Google record when you download the app from them falls under their own privacy policies.
The short version: we use your data to make the app work, and we count which parts are used so we can make it better. You can switch that counting off. No ads, no tracking, and we don't sell anything on.
At a glance
| Data | What for | How long |
|---|---|---|
| Name, email address, user ID | Your account and signing in | As long as your account exists |
| Your settings: whether and when you went through or skipped the welcome in the app | Not showing the welcome again, not even on another phone | As long as your account exists |
| Recipes, ratings, comments and collections | Your recipe collection | As long as your account exists |
| A recipe's source: links, pasted text, photos and PDFs, and the content we fetch from a link | Reading the recipe, and retrying a failed attempt | Fetched text: 30 days after the recipe; the rest: as long as your account exists |
| Invites to a group, with the user ID of whoever created it; wrongly entered codes, counted per hour | Letting someone join your group, and limiting code guessing | Until a new invite replaces it, or until your account is deleted |
| Pro purchases: which subscription, when bought and until when, with your user ID | Giving your group Pro | As long as your account exists |
| Crash reports, without a name or ID | Finding and fixing errors in the app | 90 days |
| Usage statistics, without a name, user ID or recipe content | Seeing which parts are used, and improving the app | 14 months |
| Server logs with IP address | Security and fixing outages | 30 days |
| Database backups | Recovery after a mistake | Up to 14 weeks |
Who is responsible
JoyMeals is an app by Van Heukelum Technology B.V. (robintech.nl), and that company is the controller responsible for processing your data.
Van Heukelum Technology B.V.
Cordell Hullplaats 117
3068 VB Rotterdam
The Netherlands
Chamber of Commerce (KvK) 83050302
Questions about privacy go to privacy@joymeals.nl.
Which data we process, and why
Your account
You sign in with Apple or Google; on Android only with Google. When you do, we get your name, your email address and a user ID: a random code that identifies your account. If you sign in with Apple and choose to hide your email address, we get a forwarding address from Apple and not your real address. If you sign in with Google, we also keep the link to your profile picture. The other members of a group you share can see your name.
Your settings
What you set for yourself in the app, we keep with your account, so it's the same on every phone you sign in on. Right now that's only whether you went through or skipped the welcome after your first sign-in, and when. Nobody else sees your settings, not even the other members of your group.
Invites to a group
If you create an invite for your group as an admin, we keep with the invite's code which group it is for, your user ID, when you created it and until when it is valid: seven days. Whoever opens the invite sees your name. If you enter a code yourself that doesn't exist or has expired, we count that against your user ID: how many wrong codes you tried this hour. That way nobody can keep guessing codes forever.
Your recipes
Everything you put in or change in a recipe: title, description, ingredients, steps, times, servings and photo, and your ratings and comments. If a photo or PDF you upload shows who wrote the recipe, such as ‘Recipe by Elma’, we keep that name with the recipe as its author. Also your group's collections: their names, their cover (an icon with a color, or a photo someone in the group chose for it), and which collections a recipe is in. Each recipe records who added it (as a user ID); a collection does not record who created it. We also keep earlier versions of a recipe, so a change can be traced back.
What you give JoyMeals
A link, a piece of text you paste or share, or photos and PDFs you upload. That is the source we take the recipe from. We keep the source with the recipe, so you can retry a recipe that failed without us fetching the page again, and so we can look into a recipe that was read strangely. We keep a link without the tracking codes that apps and newsletters add to it. How long we keep it is explained further down.
What we fetch from a link
When you paste a link, our server fetches the public content of that page, or of that post on Instagram, TikTok, YouTube, Pinterest or Facebook: the text, the caption, the creator's name and the image, and sometimes the transcript of what is said in a video. The website or platform sees that request coming from our server or from our fetching service, not from you.
If a pin on Pinterest has no recipe but points to a website, we keep the name of that website (such as example.com, without a link) with the failed recipe, so the app can tell you where the recipe might be.
Pro and the payment service
If you buy Pro, you pay on the App Store or Google Play. Your payment details stay with Apple or Google; we don't see them. A payment service keeps track of your purchases for us. It gets your user ID as soon as you sign in to the app, even if you never buy Pro, so that a purchase belongs to your account right away. If we give you Pro as a gift, like the free year for everyone who already had the app when Pro arrived, it gets your user ID at that moment, even if you never sign in again after that. If you buy Pro, it also gets your purchase history with Apple or Google (which subscription, when bought, until when, and whether it was canceled or refunded), and tells our server whether you have a subscription. Of that, we only keep whether your subscription is active, until when, and whether you bought it or were given it, so that your group has Pro as long as someone in it has a subscription. The other members of your group see in the app that Pro comes from you, so nobody pays twice.
Crash reports
If the app crashes, it sends a crash report: what went wrong in the code, your phone's model, the version of iOS or Android, the version of the app and a random installation code. It contains no name, email address, user ID or recipe content, so a report can't be linked to you. Only the version of the app from the App Store or Google Play, and its test versions, sends reports.
Usage statistics
The app counts which parts you use: which screens you open, and what kind of thing you do, such as adding a recipe, searching, rating a recipe or opening the page about Pro. That shows us what works and where people get stuck. Only what kind of thing you did is sent, never what was in it: no recipe title, ingredient, search term, creator, comment or link. Each count comes with a random installation code of the app, whether your group has Basic or Pro, your phone's model, the version of iOS or Android and of the app, and roughly which country you're in. There is no name, email address or user ID with it, and we don't use an advertising ID. Only the version of the app from the App Store or Google Play, and its test versions, counts.
You switch the counting off in the app, on the Account tab, with Usage statistics. From that moment your phone sends nothing more. Crash reports are not covered by this.
Technical data
When the app talks to our server, that server keeps a log with, among other things, your IP address and the time. The app also has itself checked to be genuine, so others can't misuse our server: on an iPhone or iPad through Apple, on Android through Google Play. All we learn from that is whether the app is genuine, nothing about you.
What we don't do
We use no ads and no advertising ID, we don't follow you in other apps or on websites, we don't link usage statistics to your account, and we don't sell or rent your data to anyone.
On what legal basis
- Performance of the contract. Your account, your recipes and their source, reading recipes, and keeping track of a Pro subscription are needed to give you the app you use.
- Legitimate interest. We use crash reports and server logs to keep the app stable and secure. They contain as little as possible and we keep them briefly.
- Legitimate interest. We use usage statistics to see which parts work and to improve the app. They are not linked to your account, contain no content, and you switch them off with one toggle.
Who processes your data for us
We have other companies do part of the work: processors. They process your data only on our behalf and according to our instructions, under a data processing agreement, and may not use it for themselves. We describe them here by what they do for us and where they do it. Which companies they are exactly, we'll tell you if you ask at privacy@joymeals.nl.
| What they do for us | Which data | Where |
|---|---|---|
| Cloud storage and servers: the database, the storage of photos and PDFs, and our server functions | Your profile, your recipes and their source | In the EU |
| Signing in | Name, email address, user ID | Outside the EU, in the United States |
| Processing payments: keeping track of Pro purchases on the App Store and Google Play | User ID from your first sign-in or as soon as you're given Pro as a gift, and your purchase history if you buy Pro | Outside the EU, in the United States |
| Collecting crash reports | Crash reports, without a name or ID | Also outside the EU |
| Collecting usage statistics | What kind of thing you do in the app, with a random installation code, Basic or Pro, your phone model, the versions of the operating system and the app, and roughly your country | Outside the EU, in the United States |
| Keeping server logs | IP address and time | Also outside the EU |
| Reading a recipe from a source, with AI | The text, the photos or the PDF | In the EU and the United States |
| Fetching public web pages and posts on Instagram, TikTok, YouTube, Pinterest and Facebook | Only the link | In the EU and the United States |
Reading recipes
To get a recipe out of a source, we send the text, the photos or the PDF to AI services in the EU and the United States. We don't send your name, email address or user ID with it, and the services don't use the content to train their AI models.
Fetching pages
If you paste a link to Instagram, TikTok, YouTube, Pinterest or Facebook, a fetching service fetches the public content of that post or video for us. That service only gets the link to the post, without the tracking codes the platform adds to it, and nothing about you. If you paste a link to another website and that website refuses to give us the page, we ask the same service to fetch that page for us one more time. Then too, it only gets the link, and nothing about you. As soon as we have read what the service fetched, we have it erase its copy.
If a Facebook video has subtitles, our server fetches that subtitle file from Facebook itself. Nothing about you goes along with that either.
Outside the EU
Where data leaves the EU, that happens under the safeguards the GDPR requires for it: an adequacy decision of the European Commission, such as the EU-US Data Privacy Framework, or the European Commission's standard contractual clauses. You can ask us for a copy of those safeguards.
If we switch services
If we bring in a different company for one of these tasks, the same arrangements apply: only on our behalf, under a data processing agreement. If that changes which data it gets or in which country it processes them, we update this page first.
How long we keep data
- Your account, your settings and your recipes we keep as long as your account exists. If you delete one recipe, the recipe, its earlier versions and its photo disappear, and it is no longer in any collection. If you delete a collection, its name and cover disappear; the recipes in it stay.
- A recipe's source. The text we fetched from a link we delete 30 days after the recipe was created; the link itself stays with the recipe. If it didn't work out to make a recipe from it, that text stays until you delete your account, even if you remove the attempt from the list, so you can try again; if the retry does succeed, we delete it 30 days after that recipe was created. Text you paste or share yourself, and photos and PDFs you upload, stay until you delete your account. If we receive a valid removal request from whoever holds the rights to that source, we delete what we keep of it sooner: the text we fetched and what we read from it, and the photo we took from it. The recipe itself stays.
- A photo you add to a recipe yourself, with the camera or from your photo library, we keep in cloud storage in the EU until the recipe is deleted. If you replace or delete that photo, the old one disappears.
- A photo you choose as a collection's cover, with the camera or from your photo library, we keep in cloud storage in the EU, cropped to a square, until the collection or the group is deleted. If you choose a different cover, the photo disappears. The photo belongs to the collection: it stays if you leave the group or delete your account.
- An invite works for seven days. Once expired it is kept until an admin of the group creates a new invite or removes someone from the group, or until whoever created it deletes their account. How many wrong codes you tried we keep until you delete your account; it only counts the current hour, and an old hour is overwritten.
- Crash reports are deleted after 90 days.
- Usage statistics are deleted after 14 months. Because they aren't linked to your account, we can't find them per person; if you delete your account, they stay until those 14 months are up.
- Server logs are deleted after 30 days.
- What we send to an AI service to read a recipe is kept by that service for at most 30 days. If its abuse monitoring sees something suspicious in it, it may keep it longer, up to at most 2 years.
- Backups: the database can be restored up to 7 days back, and every week we make a backup that we keep for 14 weeks. So what you delete, and text we remove after 30 days, stays in a backup for at most 14 more weeks.
Deleting your account
You delete your account in the app, on the Account tab, with Delete account. Without the app, you email privacy@joymeals.nl; we then delete your account in the same way, within one month. What disappears then, what stays in a shared group and what stays in a backup for a while is explained on Delete your account.
Your rights
You have the right to:
- access your data. You see your recipes in the app; for a complete overview, email us.
- have your data corrected. You edit recipes yourself in the app.
- have your data erased, with Delete account on the Account tab of the app, or by email.
- have the processing restricted, for example while we check whether your data is correct or assess your objection. We then keep your data, but don't use it any further.
- take your data with you in a common file format.
- object to processing based on legitimate interest. You switch usage statistics off yourself with Usage statistics on the Account tab.
To make a request, email privacy@joymeals.nl. We reply within one month. If you're not happy with how we handle your data, you can file a complaint with the Dutch Data Protection Authority, the Autoriteit Persoonsgegevens.
Children
JoyMeals is not intended for children under 16.
This website
This website, and app.joymeals.nl, where a shared recipe lands if you don't have JoyMeals, set no cookies and use no analytics. They are hosted by a hosting service, which uses your IP address to deliver the pages. We don't keep track of who visits the sites.
Changes
If anything changes in how we handle your data, we update this page and the date at the top. If it's a big change, we'll let you know in the app.
Contact
Questions about this privacy policy or about your data: privacy@joymeals.nl.