Privacy Policy
Version 2026-09-26.1 · Effective September 26, 2026
What changed: optional analytics now also covers the public teaching guides and printable library. If you accept, it measures visits and clicks on free PDF downloads and worksheet-maker buttons. We use these counts to understand which resources are useful. These clicks are not reported as completed purchases or worksheet generations. We ask for your analytics choice again for this version.
GraceSheetKids is run by Yujung Yun, an individual based in South Korea operating the site as a sole developer and designer (not incorporated). This policy explains what we collect, why, how long we keep it, who we share it with, and how you can see, correct, or delete it. It is written in plain language rather than legalese, because a policy you cannot understand protects nobody.
Our service is intended for adults — teachers, ministry leaders, and parents who prepare materials for children. It is not directed at children under 13, and we do not knowingly collect personal information from children. Children use the printed worksheets; they do not use the website.
Where we are, and where your data goes
GraceSheetKids is run from South Korea by one person. If you are in the United States, this means your information is accessed and administered from outside the country. Our service providers store data on servers in the United States and other regions.
Two sets of law therefore apply at once: South Korea's Personal Information Protection Act, because that is where we operate, and the privacy law of your US state, because that is where you are. Where the two differ, we follow whichever gives you more protection. The rights below are available to you either way.
Information we collect
Account information. Your email address and, if you sign in with Google, the basic profile information Google shares with us (name, email, profile image). Passwords are never stored by us in readable form — authentication is handled by Supabase.
Worksheet content. The Bible reference, age group, and options you choose are sent to our servers to generate a worksheet. Generated worksheets and any images you upload are stored in your own browser using IndexedDB so your history survives a page reload. They are not uploaded to our servers as a permanent archive.
Credit and payment records. How many print credits you hold and consume, and your order history. Card details are never handled by us — checkout is processed entirely by Polar. We receive only the confirmation and the credits to grant.
A record of which passages you generated worksheets for, and when. This is linked to your account and used to run the credit and review features.
Usage data. Standard technical data such as IP address, browser type, device type, referring page, and the pages you view.
About the passage record — please read this
A log of which Bible passages you generate worksheets for can reveal religious belief. Under the California Consumer Privacy Act and several other state laws, that makes it sensitive personal information, which requires your explicit, separate consent — a general terms acceptance is not enough.
That is why we ask for it on its own at sign-up and record the date you agreed. We use it only to run the credit and review features. We do not build advertising profiles from it, we do not sell it, and we do not share it with advertisers.
We only write this record while your consent is on file. If you have not given it, or you withdraw it, reviews and credits carry on working — we simply do not store which passage they were about.
Analytics, only if you allow it
If you accept analytics cookies, Google Analytics 4 records pages viewed, time of visit, referring page, clicks on free PDF downloads and worksheet-maker buttons on public content pages, browser and device type, and approximate location derived from your IP address, along with a random identifier in the _ga cookie.
We do not load Google Analytics at all until you accept it. If you decline, or your browser sends a Global Privacy Control signal, the script is never requested and no analytics cookies are set — and with a GPC signal we do not show you the banner at all.
Stored on your own device
Your current and recent worksheets, generation settings, worksheet history and generated images, which sign-in method you last used, and your sign-in session token. This stays in your browser.
What we do not collect
We want to be explicit, because people often assume otherwise. We do not collect phone numbers, mailing or home addresses, dates of birth, GPS or precise location, photographs you upload, camera or microphone access, or contact lists. Payment card details are entered on our payment processor's own checkout page and never reach our servers.
Cookies and similar technologies
We and our service providers use cookies, local storage, IndexedDB, and similar technologies to:
- keep you signed in and maintain your session (essential);
- remember your worksheet preferences and history on your device (essential to the product);
- measure how the site is used, via Google Analytics (analytics — only after you accept).
You can clear or block cookies in your browser settings. Blocking essential cookies will prevent sign-in and worksheet history from working.
You can change your analytics choice at any time from the Cookie Settings link in the footer of every page, or install the Google Analytics Opt-out Browser Add-on.
Advertising
We do not currently display advertising. There are no ad integrations, no ad pixels, and no data broker relationships in the service today.
If we later introduce advertising on our free content pages — our blog articles and Bible teaching guides — we will update this policy and change the version above before any ad is served, and where consent is required we will ask for it before any non-essential cookie is set. In that case third-party vendors, including Google, would use cookies to serve and measure ads, and you would be able to opt out of personalised advertising at Google Ads Settings or aboutads.info.
Advertising would never be shown inside the worksheet studio, and would never appear in the worksheets or PDFs you download or print. Your generated worksheets are your own and are delivered clean.
How your information is used
We use the information above only to:
- provide, operate, and secure the service;
- generate the worksheets you request;
- process purchases and maintain your credit balance;
- respond to support requests;
- understand aggregate usage so we can improve the product.
We do not sell your personal information, we do not share it for cross-context behavioural advertising, and we do not use the content of your worksheets to train our own models.
We disclose information only to the service providers below, when legally compelled by a valid subpoena or court order, or in a business transfer — in which case the successor would remain bound by this policy or notify you of changes.
Service providers we share data with
- Supabase — authentication, database, and server functions. Receives your account details and credit balance.
- Vercel — website hosting and delivery. Receives request logs, which may include IP addresses. Vercel keeps these under its own retention policy; we do not read, export, or analyse them.
- Polar — payment processing and checkout. Receives your email address and account ID, plus the payment details you enter on their checkout page.
- OpenAI — generates worksheet text, illustrations, sermon notes, and colouring-page prompts. Receives your chosen verse, age group, and worksheet options, the image prompts derived from them, and any sermon title you type.
- API.Bible — fetches Bible passages for some translations. Receives the passage reference you selected.
- Google Analytics — website usage measurement. Receives, only if you accept, the data described above.
- Google Fonts — delivers the web fonts used across the site. Receives your IP address and browser type, as an unavoidable result of your browser requesting these files.
- GitHub — hosts our source code and runs the daily job that produces the encrypted backup described above. Receives that encrypted file, and also holds the passphrase that encrypts it, stored as a protected repository secret.
Your name, email, and account ID are never sent to the AI providers. Each provider processes data under its own privacy policy, and we share only what is necessary for the function described.
International transfers
Our providers operate globally, so your information may be processed in countries other than your own, including the United States. We rely on the safeguards our providers maintain, including the European Commission's standard contractual clauses where applicable.
How long we keep things
- Account, profile, credit and passage records — while your account is open.
- Payment and order records — 5 years, as required by Korean e-commerce law. A daily job deletes them once those 5 years are up.
- Payment provider webhook records — the notification our payment processor sends us contains your billing details. We keep the notification's identifier permanently, because it is what stops the same payment being processed twice, but its contents are erased after 180 days, and the record itself after 5 years.
- Worksheet generation records — the record that authorises the AI calls for one worksheet expires 30 days after it is created, and is deleted a week after that.
- Sign-ups that were never completed — if you start creating an account, never confirm your email address, and never sign in, we delete the account and your address after 90 days.
- Google Analytics data — 14 months.
- Backend server and error logs (Supabase) — about 90 days. These are the logs of our database, authentication, storage, and server functions, and they record the IP address a request came from.
- Hosting request logs (Vercel) — kept by our hosting provider under its own retention policy rather than ours. The site is served as static files with no server code of our own running there, so we do not read, export, or analyse these logs.
- Database backups — 90 days, then deleted automatically. Our database plan comes with no managed backups, so once a day we export your account data ourselves, encrypt it, and store it with GitHub, where our code lives. Each copy deletes itself 90 days after it is made, and a new copy is only stored on days the data actually changed. The export contains your account record and email, your profile, credit balance, order records, and your reviews — including which passage each review was about. It does not contain your password, which our authentication provider keeps as a hash we never receive, and it does not contain your worksheets or generated images, which never leave your browser.
- Worksheet history and generated images — in your browser only, removed when you clear your browser data or delete them in the app.
These periods are enforced by a job that runs once a day, not by us remembering to do it. Deletion is the automatic outcome of time passing, not something you have to ask for.
Deleting your account
Procedure. Go to My Dashboard → Danger Zone → Delete Account. You will be shown exactly what will be erased and asked to type DELETE to confirm. There is no waiting period and no recovery window.
Method. Confirming sends a server-side request that verifies your identity from your signed-in session — you can only ever delete your own account — and permanently removes your authentication record. Because every table holding your data is linked to that record with a cascading delete rule, all of the following are erased in the same database transaction:
- your account and email address;
- your name, profile photo link, and translation preference;
- your credit balance and usage counts;
- your subscription and order records;
- your reviews, ratings, and written comments;
- your record of which Bible passages you generated worksheets for, and when.
The app then clears the worksheet history, generated images, saved settings, and session data stored in your browser.
This is a hard delete, not a deactivation. Nothing can be restored, including unused print credits, which are forfeited without refund. We keep no copy that could bring your account back: the encrypted backups described above exist only in case we lose the database, are never used to restore an individual account, and expire on their own within 90 days.
What survives deletion, and why
- Payment records held by our processor, retained as required by tax and accounting law.
- Analytics data, which is already aggregated and not linked to your account, so it cannot be selectively removed.
- Encrypted backups, for up to 90 days. Deleting your account removes it from our live database immediately, but a backup copy made before you deleted still contains your data until that copy expires. The same is true if you withdraw consent for the passage record: we erase it from the live database at once, and copies made earlier keep their older version until they age out. Backups are encrypted, are never opened to look anything up about an individual, and are never used to bring back an account you deleted — they exist only in case we lose the database. Every copy deletes itself 90 days after it was made, so the last trace of a deleted account is gone within 90 days.
- Server logs, which age out on their own within about 90 days. We do not go back through them to re-identify a deleted account.
- Cached worksheet illustrations, which are stored by the content of the request rather than by user, contain no personal information, and are reused across all users.
Your rights
These rights apply regardless of which state you live in. We will not discriminate against you — deny service, change prices, or reduce quality — for exercising them.
Access. Your dashboard shows your email, name, profile photo, credit balance, usage, subscription details, and recent worksheet history. For a complete copy, use My Dashboard → Privacy & Data → Download a copy of my data. It gives you one JSON file containing every row we hold for your account, plus an index of the worksheets saved in this browser, and it names what is not in the file and why. You can still email us instead if you would rather.
Correct. Change your display name and your email address in My Dashboard → Edit, and your translation preference in the dashboard. Changing your email sends a confirmation link to the new address; the change takes effect when you open it, because we will not move your account to an address nobody has proved they can receive mail at. If you sign in with Google, your address comes from your Google account and is changed there — email us if you need it changed only here.
Delete. Use My Dashboard → Danger Zone → Delete Account, described above. It is immediate and self-service. You may also email us and we will act within 45 days.
Withdraw consent. You may withdraw consent for the passage record at any time from My Dashboard → Privacy & Data, without deleting your account and without losing credits, orders or reviews. Withdrawing erases the passage reference from the records we already hold and stops us recording new ones; everything else in the app keeps working the same, and you can give consent again later. Encrypted backups made before you withdrew keep their older copy until they expire, within 90 days. Deleting your account also withdraws it, but you no longer have to choose between the two. You can change your analytics choice at any time from Cookie Settings in the footer or in your dashboard.
If you live in California, Colorado, Connecticut, Virginia, Utah, or another state with a comprehensive privacy law, you also have the right to know what we collect and why, and the right to limit our use of sensitive personal information. Because we do not sell or share personal information for cross-context behavioural advertising, there is no "Do Not Sell or Share" opt-out to offer.
How we verify who you are
For requests made in the app, being signed in is the verification — nothing further is needed. For requests by email, we reply to the address on the account and ask you to confirm the request from that address.
We will never ask you for a photograph, a government ID, or a copy of any document to verify a privacy request. Collecting sensitive identity documents in order to honour a privacy request would create exactly the risk the request exists to reduce. If we cannot verify a request from the account email, we will tell you why rather than escalate what we ask for.
Authorized agents
You may have someone submit a request for you. The agent should email us from their own address with written permission signed by you. We may also contact you at your account email to confirm that you authorized the request.
If we say no — how to appeal
If we deny your request, we will tell you in writing why, and what you can do next. You may appeal by replying to that email within 30 days. A different look at the same facts is not much use when one person runs the service, so an appeal means we re-examine the decision against this policy and the law rather than simply restating it, and we will answer within 45 days with our reasoning in writing.
If you are still not satisfied, you can complain to your state Attorney General. In South Korea, you can also contact the Personal Information Protection Commission.
Security
All traffic uses HTTPS. Passwords are stored only as hashes by our authentication provider. Database row-level security restricts every table so users can read only their own rows. Privileged operations run through server-side functions that derive your identity from your verified session rather than trusting the browser. API keys for our AI and payment providers exist only on the server and are never included in the code your browser downloads. Payment card details never touch our servers.
No system is perfectly secure, and we cannot guarantee absolute security.
If something goes wrong
Yujung Yun is personally responsible for handling any security incident. If we discover a breach affecting your personal information, we will:
- email every affected user without unreasonable delay, and in any case within 72 hours of becoming aware of it — the standard Korean law holds us to, which we apply to all users regardless of where you live;
- tell you plainly what happened, what information was involved, what we have done about it, and what you should do — not a vague notice that something may have occurred;
- notify the Korean Personal Information Protection Commission, and any US state authority that requires it, within the deadline that applies;
- post a notice in the app if we cannot reach you by email.
Children
GraceSheetKids is built for Sunday school teachers and ministry leaders — adults — and accounts are for people aged 13 and older. We collect no information at all about the children who receive the worksheets, only about the teacher who holds the account.
If you believe a child has created an account, contact us and we will delete it.
Changes to this policy
Every material change increases the version number at the top of this page. When that number changes, the app asks you to review and agree again before you continue. This is built into the product, not a promise we are asking you to trust: your recorded consent is stored with the version you agreed to, so a new version cannot quietly inherit your old agreement.
If a change affects how we handle the sensitive information described above, we will also email you. For corrections that do not change your rights or what we collect — fixing a typo, clarifying wording — we update the "last updated" date without interrupting you.
Contact
Questions about this policy, or a request about your data:
Yujung Yun — Founder & Privacy Officer Email: impressives2@naver.com Postal: 06289, South Korea
We operate entirely online and do not staff a phone line. Email reaches the person who can act on it directly, and is the fastest way to get a response. We aim to acknowledge privacy requests within a few days and to resolve them within 45 days.
GraceSheetKids