Privacy
What this site collects about you, why, who else receives it, how long it is kept, and what you can ask me to do about it.
Who is responsible
Otobong Okoko runs otobong.com and is responsible for the personal data it processes (the controller under the GDPR). In this notice, “I” and “me” mean Otobong Okoko.
Otobong Okoko[Postal address to follow]Email: me@otobong.comWrite to me@otobong.com with any question about your data or to use the rights listed below. The imprint has the same contact details.
What the site processes
Each part of the site is described on its own: what it collects, why, and on what legal basis. How long each kind of data is kept is in one table under How long data is kept.
Server logs and hosting
The site runs on a virtual server rented from Hetzner Online GmbH, in Hetzner’s data centre in Helsinki, Finland. Coolify, software installed on that server, builds and runs the site.
When you open a page, your browser sends the server your IP address, the address of the page, the page you came from, your browser’s user agent (browser and operating system) and the time. The server needs these to send the page back to you.
To stop abuse, the site counts requests per IP address on the sign-in, CV code, chat, contact form and error report routes. Each count is deleted when its time window ends, after 2 days at most.
All fonts are served from this site, so opening a page sends nothing to Google Fonts or any other font service.
The server does not keep a log of page requests. The site's software writes technical log lines, for example when an error happens. These stay on the server in Helsinki, at most 30 MB of them, with the oldest overwritten first, and they are deleted whenever the site is updated.
The legal basis is my legitimate interest in delivering the site and keeping it secure (Art. 6(1)(f) GDPR).
Visit statistics
The site counts visits itself. It sets no cookie for this and stores nothing on your device. Bots, invite links, the owner dashboard and the content editor are not counted.
For each page view the server records the page address, the date and hour, the device type (phone, tablet or computer) and browser name worked out from the user agent, and the domain of the site you came from. These are added to daily totals. If your request arrives with a country and city already attached, those are added to daily totals by country and by city too. The site does not look up your location from your IP address.
Your IP address is not stored. To count unique visitors, the server works out a code from your IP address, your user agent and a key that changes every day. The code goes into a counter that keeps only an estimate of how many different codes it has seen, never the codes themselves, so nothing stored leads back to your IP address. Because the key changes daily, visits on different days cannot be linked. A counter of the same kind, deleted after 6 minutes, shows how many people are on the site right now.
Until 23 October 2026, the site also kept one record per visitor with the full IP address, when they first and last visited, and how many times. Those records are no longer read or shown, and each is deleted automatically 90 days after that visitor's last visit, so all of them are gone by 21 January 2027.
While you read, the page reports how long you spent on each page, how long your visit lasted since the last full page load, the last page you viewed and the links to other sites you followed. These go into daily totals that are not linked to you.
The legal basis is my legitimate interest in knowing which pages people read and whether the site works for them (Art. 6(1)(f) GDPR).
The chat
The chat assistant, Docent, answers questions about my work. When you send a message, the site sends your conversation and the address of the page you are on to Anthropic, whose Claude model writes the reply. It does not send Anthropic your IP address or any sign-in details. Avoid typing passwords, health details or other sensitive information into the chat.
The open conversation is kept in your browser tab, so it survives a page change, and is gone when you close the tab. When you close the chat, after two idle minutes, when you leave the page or when you start a new chat, the conversation is saved on the server: your messages, the replies, the page address, the page you came from, your browser’s user agent, when it started and how long it lasted, and the topics and the kind of visitor (for example a recruiter) the site guesses from your messages. It is deleted after 90 days.
A copy of each conversation is emailed to me, at most 3 a day per IP address and 50 a day in total. Emails to me are described under Contact form and emails.
The legal basis is my legitimate interest in answering visitors’ questions about my work and learning what they want to know (Art. 6(1)(f) GDPR).
Sign-in and access to case studies
Some case studies are private. You can open them in two ways.
- With your work email address. You receive a 6-digit code by email, valid for 10 minutes. Personal and disposable addresses are refused. If I have invited you, you are signed in. If not, the site records an access request (your email address, the page you wanted and the time) and emails me, and I approve or dismiss it.
- With the code printed on my CV. No email address is needed. The session gets a random identifier instead.
I can also invite you. An invite holds your email address, your name and the case studies you may open, and the invite email has a personal link. An invite you have not accepted is deleted after 7 days. An accepted invite is what keeps your access, so it is kept until I revoke it, and a revoked invite is kept as well. There is currently no end date for either.
Each sign-in is logged: how you signed in, your email address and name (or which CV code), the page you opened, the page you came from, your browser’s user agent, a short code worked out from your IP address, and the time. I receive an email about each sign-in, for CV code sign-ins at most one an hour per address. A cookie keeps you signed in for 7 days.
If an address is refused, the site counts further attempts with that address until it has been unused for 30 days, and emails me about it at most once an hour.
Before some case studies you accept a non-disclosure agreement by typing your full name. The site stores your name, your email address (or the CV code session), the case study, the agreement’s version and a fingerprint of its text, your full IP address, your browser’s user agent and the time. This record is evidence of the agreement and is kept for 551 days: the agreement’s 6-month term plus one year. If you signed in by email, you receive a copy of the agreement by email. I receive a notice.
The legal basis is my legitimate interest in sharing confidential work only with people I can identify, and in being able to prove that the agreement was accepted (Art. 6(1)(f) GDPR).
Contact form and emails
The contact form sends me your name, email address, subject and message by email, with your address set as the reply address. The site itself stores only a daily count of messages, not the messages.
All email from the site is sent through Resend. Emails to you: the sign-in code, invite links and your copy of the non-disclosure agreement. Emails to me: contact messages, chat conversations, and notices about sign-ins, access requests, accepted agreements and refused addresses.
I receive these emails at me@otobong.com, a Google Workspace mailbox, and each one is also copied to my personal Gmail address. They stay in both mailboxes until I delete them.
The legal basis is my legitimate interest in answering your message and in knowing who opens private work (Art. 6(1)(f) GDPR).
Error monitoring with Sentry
The site uses Sentry to find and fix errors and slow pages. When something breaks, Sentry receives a technical report: the page address, the pages you opened and the buttons you clicked just before, your browser, device, language and time zone, and what the code was doing. For about one page load in ten it also measures how long the page and the server took.
If an error happens, Sentry may also receive a replay of the minute before it and of the rest of that visit. In a replay all text and everything you type is masked, and images and video are blocked, so it shows the layout and your clicks, not what you read or wrote. Nothing is recorded on the sign-in, non-disclosure agreement, invite and private pages. Errors there are still reported, without a replay.
Before a report leaves the site, email addresses, IP addresses, cookies, sign-in and invite codes the site can recognise, request bodies and chat messages are removed. Reports from your browser go to this site’s own address first, which passes on only the report, without your cookies or IP address. Sentry is set not to store IP addresses, and stores the reports in its EU region in Frankfurt, Germany.
The legal basis is my legitimate interest in finding and fixing errors on this site (Art. 6(1)(f) GDPR).
Google Analytics, only with your consent
Google Analytics runs only if you choose Accept analytics in the banner. Until then the site loads nothing from Google and sets no Google cookie.
If you accept, your browser loads Google’s tag from googletagmanager.com. Google then sets the cookies listed below and receives the pages you view, the page you came from, your browser, device and screen details, and your IP address, which reaches Google with every request. Google states that Google Analytics 4 does not log or store IP addresses. Google signals and ad personalisation are switched off, and advertising storage is denied. Google Analytics never runs on the sign-in, non-disclosure agreement, invite, private and owner pages, whatever you chose.
Your choice counts for 6 months; then the banner asks again. It also asks again if what the site sends to Google changes. You can withdraw your consent at any time, as described under Your analytics choice.
The legal basis is your consent (Art. 6(1)(a) GDPR, and § 25(1) TDDDG for the cookies).
Who receives data
These companies process data for me. I have a data processing agreement with each of them, except where the table says otherwise.
| Recipient | What for | Where |
|---|---|---|
| Hetzner Online GmbH, Germany | The server that runs the site | Helsinki, Finland |
| Upstash, Inc., USA | The database: visit statistics, chat conversations, sign-in and agreement records, invites, abuse counters | Region to be confirmed |
| Anthropic, USA | Writing the chat’s replies | USA |
| Resend (Plus Five Five, Inc.), USA | Sending the site’s emails | USA, including its email logs |
| Google (Google Workspace) | My mailbox me@otobong.com | Region to be confirmed |
| Google (personal Gmail account) | Copies of the emails sent to me. A personal account, without a data processing agreement. | Google’s data centres |
| Sentry (Functional Software, Inc.), USA | Error monitoring | Frankfurt, Germany (EU region) |
| Google, only with your consent | Google Analytics | Google’s data centres, including the USA |
Transfers outside the EU
Anthropic, Resend, Sentry, Upstash and Google are companies based in the USA, or owned by one, so data can reach the USA even when it is stored in the EU.
- Google LLC, Functional Software, Inc. (Sentry), Plus Five Five, Inc. (Resend) and Upstash, Inc. state that they are certified under the EU-US Data Privacy Framework. For certified companies the European Commission’s adequacy decision of 10 July 2023 applies (Art. 45 GDPR).
- For Anthropic, transfers rest on the European Commission’s Standard Contractual Clauses of 2021, which are part of its data processing agreement (Art. 46 GDPR).
To ask for a copy of these safeguards, write to me@otobong.com.
How long data is kept
| Data | Kept for |
|---|---|
| Abuse counters per IP address | Up to 2 days |
| Technical log lines on the server | Until the site is next updated; at most 30 MB, oldest first |
| Visit statistics (daily totals and unique visitor counts, no IP address) | 90 days; activity by hour 48 hours; visitors on the site now 6 minutes |
| Older visitor records with your full IP address, made before 23 October 2026 | 90 days after your last visit; all gone by 21 January 2027 |
| Chat in your browser tab | Until you close the tab |
| Saved chat conversations | 90 days |
| Chat messages at Anthropic | Deleted within 30 days; up to 2 years if flagged for breaking Anthropic’s usage policy |
| Sign-in code | 10 minutes |
| Sign-in log | 90 days |
| Attempts with a refused address | 30 days after the last attempt |
| Access requests | Until I approve or dismiss them |
| Invites not accepted | 7 days |
| Accepted and revoked invites | No end date at present |
| Non-disclosure agreement record, with your full IP address | 551 days |
| Sign-in cookies | 7 days |
| Emails in my two mailboxes | Until I delete them |
| Email logs at Resend | As long as Resend keeps them; to be confirmed |
| Error reports and replays at Sentry | 30 days |
| Your analytics choice | 6 months |
| Google Analytics data, with consent | As set in Google Analytics; to be confirmed |
Your rights
Under the GDPR you can ask me to:
- tell you what data I hold about you and give you a copy (Art. 15);
- correct data that is wrong (Art. 16);
- delete your data (Art. 17);
- restrict how your data is used (Art. 18);
- tell the recipients above about any correction, deletion or restriction, and tell you who they are (Art. 19);
- give you the data you provided in a common, machine-readable format (Art. 20).
Where I rely on legitimate interest, you can object to the processing for reasons arising from your situation (Art. 21). I then stop, unless I have compelling legitimate grounds that override your interests or need the data for legal claims.
You can withdraw your consent to Google Analytics at any time (Art. 7(3)). This does not affect processing before the withdrawal.
To use any of these rights, write to me@otobong.com.
You can also complain to a data protection authority (Art. 77). The authority for this site is the Berlin Commissioner for Data Protection and Freedom of Information (Berliner Beauftragte für Datenschutz und Informationsfreiheit):
Berliner Beauftragte für Datenschutz und InformationsfreiheitAlt-Moabit 59-6110555 Berlin, Germanymailbox@datenschutz-berlin.dewww.datenschutz-berlin.deYour analytics choice
Select Cookie settings at the bottom of the page. The banner opens again and shows your current choice and the day you made it. Choose Accept analytics or Reject analytics.
Rejecting stops Google Analytics on the page you are on and deletes its cookies. Your other open tabs follow. From the next page load Google’s tag is not loaded at all.
Cookie settings appears only while the site uses Google Analytics. Without JavaScript, Google Analytics cannot run, so the button is hidden.
Last updated 23 October 2026. Imprint