Privacy notice
Last updated: October 31, 2026
Friend by Friend helps friends invite friends to donate small gifts to a real cause. This page says in plain words what we keep about you, why, and what you can ask us to do. Our Terms are on another page.
Who is responsible
Illia PogodinWoodinville, Washington, USA
team@friendbyfriend.com
What we collect, and why
- Sign-in with Google or Apple: your name, your email, and the picture link that your account shares. We never see a password. Our sign-in tool also stores the sign-in tokens that Google or Apple give us. Our code does not use them. With Apple you can choose "Hide My Email".
- Passkey: the public part of the passkey. We get no email with a passkey, so we cannot email you. Your phone or browser keeps the private part.
- Your public name: a real name or an alias. At first it is the name that Google or Apple gives us. If we get no name, it is a random alias. Everyone who sees the tree can see this name. You can change it on your Me page.
- Who invited whom: the links you make and use, so the tree of friends can be shown.
- Your gifts: the date, the amount, the currency, how you donated, and the result of the check.
- Receipt screenshot: see the next section.
- Time zone: we read your time zone from your connection when you sign in and keep only the time zone, not your address. We use it so that emails do not arrive at night.
- Last sign-in time: shown to the site owners, to see who is active.
- A short code of your network address: a one-way code, not the address. We use it to stop abuse and too many tries. We delete old codes once a day.
- Contact for a big gift (optional): your name and a phone number, email or messenger name, so the team can say thank you. Only admins with the right permission can see it.
- Records of what happened: an audit trail of gifts, decisions and admin actions. Each time an admin looks at an email address or a receipt, we log it.
Why we use it: to run the service you ask for (your account, your tree, your gifts); for our legitimate interest to keep the site safe, stop fake gifts and explain the totals; and with your consent for cause update emails, which you can stop at any time.
Receipt screenshots and the AI check
- The picture you upload is private. Only you and the admins who check gifts can see it. We log each view. We re-encode the picture, which removes its camera data.
- An AI service reads the picture: Google Gemini, through the Vercel AI Gateway. It gets the picture and a fixed instruction. It does not get your name or your email.
- The AI writes down the amount, currency, date, receiver name, transaction number (if shown), status, the app it came from, and short notes. We keep these with your gift. A person checks when the AI is unsure.
- We delete the picture after 48 hours. A daily job does this. If that job fails, the picture may stay a little longer.
- Please hide card and bank numbers in your screenshot.
Emails we send
- Cause updates, only if you choose them. Each one has a link to stop them.
- Short notes about your account: you joined, a link of yours ended, a friend missed their time or got a spot removed, someone joined under you, or you got a role such as admin or keeper. Reminder emails have a stop link.
- We send them with Resend. Replies go to our team mailbox.
Who helps us (processors)
| Who | What for |
|---|---|
| Vercel | Hosting, server functions, AI Gateway |
| Neon | The database (accounts, gifts, tree) |
| Cloudflare (R2) | Private receipt pictures, public photos and videos |
| Resend | Sending email |
| Google (Gemini) | Reads the amount on a receipt, through Vercel AI Gateway |
| Google, Apple | Sign-in, if you choose it |
| Cloudflare, Google Groups | Email to our team address |
We do not sell your data. We use no ads and no analytics. We load no fonts or scripts from other sites.
Cookies and device storage
We use only the cookies that the site needs to work. We ask for no consent for them.
Show the cookie list
| Name | What for | How long |
|---|---|---|
| authjs.session-token | Keeps you signed in | Up to 30 days |
| authjs.csrf-token | Protects forms | Session |
| authjs.callback-url | Remembers where to go after sign-in | Session |
| authjs.state, pkce, nonce | Safe sign-in with Google or Apple | Minutes |
| fbf_invite_seen | Remembers an invite link you opened | 1 hour |
| fbf_join | Finishes joining after sign-in | 1 hour |
| fbf_known | Remembers that this device signed in before | 1 year |
| fbf_seed | Finishes joining without a friend link after sign-in | 1 hour |
| fbf-theme (device storage) | Your light or dark choice | Until you clear it |
| fbf-focus, fbf-explained, fbf-help-hint (device storage) | Remembers your tree view and that you saw the help | Until you clear it |
The cookie names can have a "__Secure-" or "__Host-" start. All of them are HttpOnly, Secure and SameSite=Lax.
Who sees what
- Everyone who sees the tree: your public name (real name or alias).
- Other people see your gift only as "$5+" at most. A total for a branch shows only when 2 or more other people donated in it.
- Only the site owners can see email addresses.
- Admins can see more about gifts, and the receipt if they have the "check receipts" permission.
How long we keep it
| Data | How long |
|---|---|
| Receipt picture | 48 hours |
| Contact for a big gift | 90 days |
| Network code for abuse limits | Up to 1 day |
| Sign-in session | Up to 30 days |
| Account (names, email, image, sign-in methods, tokens) | Until you ask us to delete it |
| Gift records, decisions and audit trail | No end date yet. We keep them so the totals can be explained. If you ask for deletion, we remove your personal details and keep the amounts and dates. |
| AI reading of your receipt (receiver name, transaction number, notes) | Removed after the final check or after 90 days. The amount, currency and date stay. |
Your rights
You can ask us to:
- show you the data we hold about you (access) and give you a copy (export);
- correct data that is wrong;
- delete your account and your personal details;
- stop using your data for a reason you object to;
- stop cause update emails (use the link in the email).
Write to team@friendbyfriend.com. We aim to answer within one month. We do these requests by hand today. When we delete an account, we remove your personal details and keep the gift amount and date, so the totals stay right. You may also complain to your data protection authority.
Where it is kept
Your data is stored in the United States with the providers above. If you live in the EU, the UK or Ukraine, this is a transfer out of your country. We rely on the transfer terms of these providers, such as standard contractual clauses.
Children
Friend by Friend is for people who are 18 or older. It is not meant for children. If you think a child gave us data, write to us and we will delete it.
Blocking
An admin can block an account that breaks the Terms. A blocked account keeps its records, so the totals stay right.
Changes
If we change this page, we change the date at the top. Please read it again from time to time.