Privacy notice
Callsight measures what finance creators said in public against what then happened. Every page can be read without an account, and reading asks almost nothing of you. This notice sets out the little that is collected when you read, what is collected when you use the features that do need something — an account, a watchlist, alerts, the email list, correction reports and the AI chat — why, who else handles it, and how long it is kept. Callsight is run by the operator of Callsight, called “we” below.
In short
- No advertising, and no selling or renting of personal data.
- Visits are counted with Google Analytics, from our server and not from your browser: no analytics cookie or script, no IP address, and an identifier that changes every day. If your browser sends Global Privacy Control, your visits are not counted.
- Questions typed into the AI chat are sent to DeepSeek, a provider in the People’s Republic of China, to generate the answer. Your IP address, account and email address are not sent with them.
- You can ask for your personal data to be deleted at any time.
1. What Callsight is
Callsight is a measurement of public statements. It records predictions that creators made in public videos, each with the words they used and a link to the moment they said them, and checks each one against market prices and published economic data by a published method. It is not investment advice, and nothing on it is a recommendation to buy or sell anything.
2. What we collect, and why
Reading the site. You do not need an account to read anything. The web server that delivers the pages (Caddy) keeps an access log: one line for each request, with the time, the address of the page, your IP address as Cloudflare passes it on, and the headers your browser sent, such as its user-agent and preferred language. Cookies and authorisation headers are blanked before the line is written, so no one can read a signed-in session from it. The access log is kept for 30 days and is used to keep the site running, to understand the load on it, and to deal with abuse and automated traffic. Your IP address can also reach the server’s system logs: when something goes wrong, for example while the site is briefly unavailable, the error lines the web server prints carry the address a request came from and its headers. The system logs are deleted after about 30 days: the system journal is set to keep 30 days and deletes a whole file at a time, so an entry can occasionally stay longer, and the syslog copy keeps about four weeks. They are used to keep the site running and to deal with abuse. Cloudflare, which handles DNS, TLS and the proxy in front of the site, handles connection data too, and keeps its own logs under its own terms (see section 3).
Counting visits. To learn how many people find the site, how they reach it (from a search engine, an AI assistant or another site) and which pages they read, our server sends Google Analytics a short record when a page is opened. The server sends it after the page has been delivered: no analytics script runs in your browser and no analytics cookie is set. A record holds the address of the page, with every query parameter removed except the campaign tags that begin with utm_, and a short name for the page made from that address alone; the site you came from, as its address only (such as https://www.google.com/) and only when it is another site; the language edition you are reading; the country your connection comes from, as Cloudflare reports it; whether the device is a phone, a tablet or a computer, and the family of its operating system and browser, without versions; and a pseudonymous identifier. The identifier is calculated on our server from the network your address belongs to (the first three parts of an IPv4 address, or the first 48 bits of an IPv6 address) and your browser’s user-agent string, with a key made from a secret that only our server holds and from the date. It is the same for your visits within one day and changes at 00:00 UTC, so visits on different days cannot be linked to each other, and it is not stored on our server. Whoever held that secret, your address and your user-agent string could recalculate your identifier for a given day. Your IP address and your full user-agent string are never sent to Google, and Google’s advertising signals are switched off for every record. If your browser sends the Global Privacy Control signal, nothing is sent about your visit. When an account is created, one more record of the same kind says that an account was created, and nothing about the account itself. Pages fetched by the automated crawlers of AI companies are counted under the crawler’s name, not as visitors.
An account. If you register, we store your email address, the name you enter, and your password as a one-way hash produced by the sign-in software (Better Auth); the password itself is never stored. When you sign in, a session cookie keeps you signed in, and the session record notes the IP address and user-agent string it was opened from. We use these to let you sign in, to keep what you save, and to protect the account.
Cookies. The only cookie the site sets is that session cookie, and only when you sign in. It sets no preference, advertising or analytics cookies. If the site later offers a display setting, such as a colour-vision-safe palette, this notice will first say which cookie records it.
Your watchlist. The instruments you choose to follow, linked to your account, so the site can show them to you and alert you about them if you ask it to.
Alerts. Alerts need an account. If you subscribe, we store, with your account, the channel you choose (email or Telegram); the destination (your email address or your Telegram chat id); a one-time verification code, how many wrong codes have been entered, and whether the destination has been verified; your preferences, such as which kinds of instrument to cover and how many creators must agree before you are alerted; the language to write alerts in; and whether the subscription is active. We keep a record of each verification code sent (the account, the channel, the destination and the time), so that codes cannot be requested without limit, and a record of each alert sent: the channel, the destination, what was sent and whether it was delivered. We use these to send only the alerts you asked for, only once you have shown that the destination is yours, and never the same alert twice.
The email list. If you join the email list, we store your email address, where on the site you signed up, and whether the address has been confirmed or unsubscribed, with the dates. Nothing is sent to it until email sending is enabled, and then you will be asked to confirm the address before anything else is sent.
Correction reports. If you report a problem with a claim, we store your message, the claim it concerns, the time, and your email address if you give one. The operator of Callsight is sent a short notice through Telegram that carries only the report’s number and the claim’s id, never your message or your address; the operator can then read the report and, if you left an address, reply to it. Your email address is never published.
The AI chat. Some creator pages offer a chat with an AI simulation of the creator. When you ask it a question:
- Your question, the last few turns of the same conversation, and a handful of passages retrieved from that creator’s public videos are sent to DeepSeek, which generates the answer. DeepSeek is a provider in the People’s Republic of China, and it processes the request there under its own terms. We do not send it your IP address, your account or your email address. Please do not put personal information in a question.
- We do not store your questions or the answers on our servers. Your browser keeps the conversation in its session storage for that tab, and it is gone when the tab is closed.
- To count the daily free allowance, we store a salted hash of your IP address (for an IPv6 address, of the network it belongs to) — never the address itself — with the date and the number of questions asked that day.
The Chat section. The Chat section (/chat) shows each tracked channel’s checked record as a conversation, with short clips from its videos, each with a link to the video at that second. Reading it needs no account. What you ask Callsight to post there, such as a subject’s record or the latest video, is kept in your browser’s session storage for that tab, under a name that starts with callsight.msgr, and is gone when the tab is closed. It is not sent to us, and nothing you do in the section is sent to DeepSeek or to anyone else. One thing is kept longer: the list of chats you choose under “Your chats”. It is saved in your browser’s local storage under the name callsight.yourchats.v1, holds the short names of the channels you chose and one number (the highest channel number at the time you last changed the list), and has no expiry. It stays in your browser and is never sent to us; the latest-results chat reads it there to show only your channels. You can remove it with “Clear all chats and my list on this device” in the section’s About sheet, or by clearing this site’s data in your browser. The page loads each clip’s thumbnail from YouTube’s image server, and loads YouTube’s player only when you tap Play on a clip. The one thing in the section that does send something to us is a report, which you send on purpose and which is described next.
Reports of a clip. Each clip in the Chat section has a Report button. If you send a report, we store the reason you pick, the clip’s video and second, the note you add (optional, at most 500 characters) after phone numbers, email addresses and runs of nine or more digits in it have been replaced by “[removed]”, the chat the clip’s video belongs to, the language of the page, the time, and two values that identify no one by name: a key for your network and the hash of a delete token. The network key is pseudonymous, not anonymous: it is computed from the network your address belongs to (for IPv6 its /64), under a secret that changes every week (on Thursday at 00:00 UTC) and that only we hold, so that we can count how many different networks reported something in the same week without keeping the address. Whoever held the secret and an address could recompute the key for that week. The delete token is a random value that your browser keeps in that tab’s session storage; we keep only its one-way hash, so only that tab can delete the report. No address, cookie, account, name or email address is stored with a report, and the report is not sent to anyone. Nobody reads reports: they are counted by code. When three reports that say a real person’s words are misrepresented (for example, that someone other than the creator is speaking in a clip) arrive from three different networks in the same week, that creator’s chat is paused for 14 days by itself, and for 90 days if it was paused within the previous 90 days; the pause ends by itself, and the chat’s page says that it is paused after reports. The count starts again every Thursday at 00:00 UTC, because the network key changes then and a network cannot be recognised from one week to the next; reports spread across that moment are not added together.
To stop one network filing reports and deleting them again without end, the server also keeps, in its memory only and never in the database, how many reports each network key has filed today and how many of its delete requests found no report to delete. It holds the same weekly key and numbers, no text, is not written to disk and is forgotten when the server restarts. Deleting a report does not give its place in the first count back, and a delete that finds your report is never refused because of what others on your network have done.
Switching a chat off. A creator can switch his chat off without anyone checking his identity by hand. The page /chat/<creator>/switch-off gives a one-time code on request; we store a one-way hash of the code, the chat it is for and the times it was made and expires, and nothing about whoever asked. The code does nothing until it is found in the description of that creator’s own YouTube channel: once a night, the data pipeline reads the descriptions of the channels with an open request through YouTube’s Data API, looks for the code, and does not store the description. The record of public videos and calls stays when a chat is switched off.
3. Who else handles it
- vNode (SAO VIET NETWORK SOLUTIONS COMPANY LIMITED), in Vietnam, hosts the site, its database and the server logs.
- The operator’s own computer, in Vietnam, keeps the published record (claims, verdicts and prices), loads it onto the server, and runs the data pipeline, which connects to the site’s live database, account tables included. Once a day it also fetches a copy of the data readers give us from the server, over an encrypted SSH connection, and keeps the 14 newest, as described under how long data is kept.
- DeepSeek receives chat requests, as described above.
- Telegram delivers alerts to people who choose it, and so receives your chat id and the text of each alert.
- An email delivery provider will send alerts and confirmation emails once email sending is enabled, and will receive the recipient address and the message. It will be named here before it is used.
- Cloudflare (Cloudflare, Inc., United States) provides the site’s DNS and TLS and the network proxy in front of it. Every request to the site passes through Cloudflare’s network, in the United States and other countries, so Cloudflare handles connection data, such as IP addresses, in order to route traffic to the site and secure it, and keeps its own logs under its own terms. It also tells our server which country a request comes from, which is the country in the visit counts.
- Google Analytics (Google LLC, United States) receives from our server the records described under “Counting visits” and processes them on our behalf, as our processor, to produce the site’s visit statistics. The records reach Google from our server, so Google does not receive your IP address with them. Google may process them in the United States and other countries.
- Image hosts. Instrument logos and creators’ channel pictures are loaded by your browser directly from the services that host them, such as CoinGecko, Elbstream and YouTube. As with any image on the web, those services see your IP address and browser details when the image is fetched. We send them nothing else.
- YouTube (operated by Google), when you use a clip in the Chat section. Its thumbnails are images like any other host’s. The video itself is not loaded until you tap Play: then your browser loads YouTube’s privacy-enhanced player (
youtube-nocookie.com) inside the conversation, and YouTube handles that viewing under its own terms. Nothing is loaded from the player before you tap, and we send it nothing.
We do not show advertising, we do not sell, rent or trade personal data, and we load no analytics, advertising or tracking script in your browser. Because of the providers above, your data is processed in Vietnam, where the site is hosted and on the operator’s computer; in the United States and other countries, by Cloudflare and, for the visit counts, by Google; and, for the chat, in the People’s Republic of China. The rules on personal data in those countries may differ from those where you live.
4. How long it is kept
- Server logs: the web server’s access log is kept for 30 days. The system logs, which can hold an address where an error line carries one, are deleted after about 30 days (the journal keeps 30 days and deletes a whole file at a time, so an entry can occasionally stay longer; the syslog copy keeps about four weeks).
- Visit counts: nothing is kept on our server. Google Analytics is set to keep the individual records for 2 months, after which Google deletes them; the totals in its reports, which identify no one, are kept for as long as the reports exist.
- Your account, sessions and watchlist: until you ask us to delete the account.
- Alert subscriptions and the records of codes and alerts sent, the email list, and correction reports: until you ask us to delete them, or until they are no longer needed for the purpose they were collected for. A correction report is part of the record of how a claim was reviewed; on request we remove your email address from it.
- Chat allowance counts: kept for 30 days, then deleted. They contain a salted hash, never an IP address.
- Chat reports: deleted 90 days after they were sent, or at once when the sender deletes them. What stays is a count for each chat, day and reason, with no text, no key and no token. The operator runs a clean-up job at least once a week to do the deletion.
- Switch-off codes: valid for 14 days, and their hashes are deleted 30 days after the code expires or is found.
- Backups: the server keeps no backup of its own. Once a day the operator’s computer, in Vietnam, fetches a copy of the data readers give us from the server, over an encrypted SSH connection: accounts, watchlists, alert subscriptions and the records of codes and alerts sent, correction reports, the email list, and the chat’s allowance counts, reports, feedback taps and switch-off codes. Sign-in sessions and one-time sign-in tokens are not copied, so after a restore you would be asked to sign in again. It keeps the 14 newest copies, unencrypted. The published record (claims, verdicts and prices) is kept on the operator’s computer as well, and loaded onto the server from there. Something deleted from the site stays in the copies until the copies that held it are replaced: that is within about 15 days, as long as the daily fetch keeps working, and longer for every day it does not. When you ask for your data to be deleted, the operator removes the rows from the server’s database; the copies already made are not rewritten, and drop out on that timetable.
5. Your choices and rights
You can read the whole site without giving us anything, and you can keep your visits out of the visit counts by turning on Global Privacy Control in your browser or with an extension that sends it. You can ask for a copy of the personal data we hold about you, for it to be corrected, or for it to be deleted, and you can ask us to stop sending you alerts at any time. Until a dedicated contact address is published on this page, send such a request through the corrections process, using the report form on any claim page: say that it is a privacy request and give the email address it concerns, so that we can reply to it and confirm the request is yours. Depending on where you live, data protection law may give you further rights, including the right to complain to a supervisory authority.
6. Creators and content from YouTube
Callsight processes what was said in public videos: channel names, video titles, short quotations with the second they were spoken, and the captions used to find them. It does so to measure and comment on public predictions by a method that is published and applied to every channel in the same way. A creator can ask for content derived from their videos to be removed, through the same corrections process. When content is removed, the stored captions are deleted and the claims taken from that video are withdrawn, with a notice left in their place. How a withdrawn claim is treated in the record is set out in the method.
7. Children
The site is not directed at children, and accounts, alerts and the email list are not intended for anyone under 16.
8. Security
Passwords are stored only as hashes, and pages and forms are served over encrypted connections. No system is perfectly secure; if a breach affects your data, we will tell you as the law requires.
9. Changes to this notice
When what we collect, or who handles it, changes, this notice changes first and the date below moves with it. See also the terms of use.
Last updated .