Privacy Policy
Effective date: October 19, 2026
1. Who we are
GreenCardClock is operated by STS Solutions LLC ("we", "us", "our"). We operate greencardclock.com, an informational tool for employment-based immigration data. Contact us at hello@greencardclock.com.
2. Information we collect
Account data: When you sign in with Google we receive your name, email address, and profile picture from Google. Of that, we store only your email address in our database, together with your subscription status and the purchase records described below. We do not store your Google password or your card details. Payment data: When you subscribe to our Pro plan, Stripe processes your payment. We receive only a Stripe customer ID, your plan, and your subscription status (active, canceled, etc.) with its end date. When you buy a pass or leave a tip, we store a purchase record: your email address, the Stripe checkout session ID and customer ID, the amount, and when the access it opens ends. If you accepted analytics cookies, a pass purchase record also notes how you first and most recently reached the site (source, referring site, campaign and landing page). We also store the priority dates (with country and category) that you open for the full analysis with Pro, a Day Pass or a tip thank-you, and the up to 3 priority dates a Scenario Cards Pass opened, so we can apply each one's limit and keep a record of use. Your card details never touch our servers. Newsletter: When you subscribe to our newsletter, we store your email address and the country of birth and EB category you choose, to send digest emails matched to them, about one after each new visa bulletin, and occasional updates. Alerts: When you set a visa bulletin alert while signed in, we store your email address with the alert's country, category and, if you give one, priority date. Saved case: When you use the Estimator while signed in, we save your most recent case to your account so it is filled in the next time you visit: country, category, priority date, filing path and status, and any USCIS receipt number and receipt date saved with it by an earlier version of the Estimator. When you are signed out, the Estimator keeps your inputs in your browser instead (Section 5), never a receipt number. Case-status emails: If you signed up for USCIS case-status emails, we store your email address, your receipt number with its form type and any label you gave it, its latest status and a history of its status changes, so we can email you when the status changes. Email records: We keep a log of each email we send: the recipient, the subject, which email provider sent it, and whether it was sent. The subject of a case-status email includes the receipt number. Community-submitted data: When you submit an immigration journey (e.g., OPT, H-1B, PERM milestones), a green card timeline (EB category milestones), or a consular case (visa appointments, interview outcomes), we store the information you provide. If you are signed in, your email is stored with the submission for verification purposes but is never displayed publicly. If you submit anonymously, no identifying information is stored with the submission. Voting data: When you vote on community submissions (helpful or suspicious), we generate a one-way cryptographic hash of your IP address and browser user-agent to prevent duplicate votes. We do not store your actual IP address or user-agent string, only the hash. Analytics: We use Google Analytics 4 to understand how visitors use our site, including pages visited, session duration, device type, and approximate geographic location. If your IP address places you in the European Economic Area (EEA), the United Kingdom or Switzerland, Google Analytics does not load, and nothing is sent to it, until you click "Accept" on our cookie banner. Everywhere else, it loads on every public page; before you click "Accept", and if you decline, it sends Google cookieless pings: no cookies are set and no identifier is stored on your device, and Google may use these pings to estimate visits in aggregate. Clicking "Accept" lets it set analytics cookies (Section 5). To tell which applies, unless you have already accepted, your browser asks our server, normally once per browser tab. Our server answers from the country that our host, Vercel, derives from your IP address, and returns only whether you are in the EEA, the UK or Switzerland; we do not store the country or your IP address. If the answer is missing, slow or unclear, we treat you as visiting from the EEA. Whenever Google Analytics runs, the page addresses it receives can include Estimator inputs carried in a link (country, category, and priority date month and year), and we also send events such as a paywall being shown (with the country and category on screen) and a checkout being started or completed (the amount and an order reference). Error monitoring and session replay: We use Sentry to detect and diagnose errors and slow pages. In your browser, Sentry receives error reports (the error, the page address, your browser type, and the clicks, page visits, network requests and console messages that led up to it), page timings for about 30% of page loads, and a session replay for about 10% of visits plus any visit in which an error occurs. A replay records the page layout, clicks, scrolling, the pages you visit and the addresses of requests the page makes. All text on the page and everything you type is masked, and images and media are blocked, so a replay does not show the words on the page or what you type. The page and request addresses it records can still include the Estimator's country, category and priority date month and year. On our servers, Sentry receives error details with the request address and browser type, but not request bodies, cookies or IP addresses. We do not attach your name or email address to anything we send Sentry. Sentry runs whether or not you accept cookies.
3. How we use your information
We use your email to: • Identify your account and unlock Pro features after payment • Send the visa bulletin digest (only if you subscribed) • Send emails for features you use: alerts you set, case-status updates you signed up for, and purchase and access emails • Associate community submissions with your account for trust verification • Respond to support requests you send us We use community-submitted data to: • Display aggregated immigration processing timelines and statistics • Calculate average processing times, approval rates, and trend data • Identify potentially fraudulent or inaccurate submissions via community moderation We use voting hashes to: • Prevent duplicate votes on community submissions • Enable community moderation of data quality We use automated checks to: • Detect statistically implausible submissions (e.g., impossible processing timelines) • Rate-limit submissions per IP address to prevent spam and abuse • Flag outlier data for manual review before including it in aggregated statistics We do not sell your data. We do not use your data to target advertising, and no ads are shown on the site at present. Community submissions are displayed publicly but never include your email address or Google account details.
4. Third-party services
When your browser loads anything from, or sends anything to, one of the services below, that service also receives your IP address and browser details. Google Sign-In: used for sign-in. Google shares your name, email address and profile picture with us (Section 2), and while you are signed in your profile picture loads from Google's servers. Governed by Google's Privacy Policy. Stripe: used for payment processing. We send Stripe your email address (for a tip, only if you are signed in), the address of the page to return you to after payment, which for a purchase started from the Estimator includes the case on screen (country, category, priority date month and year, and filing choices), and, for Pro and passes, how you reached the site if you accepted analytics cookies. Stripe collects your card and billing details on its own pages. We never see them. For Pro, the Day Pass and the Scenario Cards Pass, Stripe, through its Link service, normally acts as the seller (merchant of record): it calculates and collects any sales tax and handles the purchase under its own terms. Tips, and Pro subscriptions that started before we moved to this arrangement in October 2026, are processed by Stripe with us as the seller. Governed by Stripe's Privacy Policy. Google Analytics 4: used for website analytics, as described in Section 2. If your IP address places you in the EEA, the UK or Switzerland, it receives nothing until you click "Accept". Elsewhere, before you click "Accept", and if you decline, it receives only cookieless pings. Accepting lets it set analytics cookies. Governed by Google's Privacy Policy. Google AdSense: no ads are shown on the site at present, and the AdSense script does not load. If we start showing ads, it will load only after you click "Accept"; it then receives the page address, referring page and browser details, and may set advertising cookies. Governed by Google's Privacy Policy. Sentry: used for error monitoring, performance monitoring and session replay, as described in Section 2. Replays mask all page text and everything you type, and block images and media. Governed by Sentry's Privacy Policy. Google Fonts: the fonts on our pages come from the Google Fonts library, but we serve them from greencardclock.com ourselves, so your browser does not contact Google to load them. flagcdn.com: serves the country flag images on some pages. Resend: sends our transactional emails (the newsletter welcome, purchase and access emails, case-status updates and notices to ourselves) and our monthly backup email (Section 7). Brevo: sends our visa bulletin digest, visa bulletin alerts and other emails that go to many recipients at once, and sends any transactional email that Resend fails to deliver. Resend and Brevo receive each email's recipient, subject and content, including the country of birth and EB category in a digest. We share this with them only to deliver our emails. Each is governed by its own privacy policy. Gmail (Google): the site owner's mailbox. It receives our notices to ourselves, including a buyer's email address when a purchase is made, and the monthly backup. Governed by Google's Privacy Policy. Cloudflare: runs our domain's DNS (website traffic does not pass through it). It receives any email you send to hello@greencardclock.com, including replies to our emails, and forwards it to our mailbox. Governed by Cloudflare's Privacy Policy. Vercel: hosts our application and runs our scheduled jobs. Every request to the site passes through Vercel, including your IP address, browser details, the page address, cookies and anything you submit in a form. Vercel keeps request logs and briefly caches some public pages and data. We use your IP address in memory to rate-limit requests and do not save it in our database. Vercel also tells our server the country of your IP address, which we use only to decide how Google Analytics runs for you (Section 2) and do not save. Neon: the data described in Section 2, including account data, community submissions, and aggregated statistics, is stored in a secured PostgreSQL database hosted in the United States. USCIS: if you signed up for case-status emails, our server sends your receipt number, and nothing else about you, to the USCIS case status website once a day to check for changes.
5. Cookies and session storage
Session cookie: We use an encrypted session cookie (set by NextAuth) to keep you signed in. This cookie contains your name, email, profile picture link, Google account ID and subscription status. It expires 30 days after your last visit, or when you sign out. NextAuth also sets short-lived cookies that protect sign-in from forgery and remember which page to return you to. Cookie consent: On your first visit, we show a cookie consent banner. You can accept or decline analytics and advertising cookies; one choice covers both. Your choice does not affect the session cookie, the tip reward cookie, Sentry (Section 2) or flag images. Outside the EEA, the UK and Switzerland, declining does not stop Google Analytics' cookieless pings (Section 2). Analytics cookies: If you consent, Google Analytics 4 sets cookies to measure site usage (e.g., _ga, _ga_*). These cookies are not set unless you click "Accept" on the consent banner. Without them, Google Analytics does not run at all if your IP address places you in the EEA, the UK or Switzerland, and elsewhere sends only cookieless pings (Section 2). Advertising cookies: No ads run on the site at present, and the Google AdSense script does not load. If we start showing ads, AdSense will load only after you click "Accept", and may then set cookies for ad personalization. If you decline, it does not load. Consent cookie: We store your consent choice in a cookie (gcc_consent) that expires after 1 year. A second cookie (gcc_consent_v), with the same expiry, records that your choice answered the current banner. If you declined before we added it, Google Analytics does not load for you in any region until you choose again, and the banner asks you once more. To change or withdraw your choice at any time, use the "Cookie settings" link at the bottom of every page. Tip reward cookie: if you open the link in a tip thank-you email, we set a cookie (gcc_tip_claim) holding that tip's Stripe checkout reference and a code showing the link came from that email. The code lets you move the tip's reward to the account you sign in with. Scripts on the page cannot read the cookie, your browser sends it only to our payment endpoints, and it is not used for analytics or advertising. It expires 7 days after it was last set, and we clear a tip from it once that reward has been claimed. Source record: If you click "Accept", we keep a record in your browser's local storage (gcc_acq) of how you first and most recently reached the site, and add it to checkouts you start (Section 2). Browser storage: The case tracker keeps the receipt numbers you enter in your browser's local storage, and they leave your browser only if you click through to the USCIS website. When you are signed out, the Estimator keeps your inputs (country, category, priority date and filing choices) in local storage. If you leave a tip, the thank-you page keeps that tip's Stripe checkout reference in local storage (gcc_unclaimed_tips) until its reward is claimed. While you fill in a community form, a draft of it is kept in your browser's session storage until you close the tab. Sentry keeps a replay session identifier in session storage. The check in Section 2 keeps its answer (whether your IP address places you in the EEA, the UK or Switzerland) in your browser's session storage (gcc_geo) until you close the tab, so it normally runs once per tab. It does not run once you have accepted analytics cookies. If you start a Pro checkout, the page keeps a random order reference in session storage (gcc_checkout_txn) until you return from Stripe or close the tab: it lets the page confirm your purchase, and it is the order reference Google Analytics receives when it runs. If Google Analytics runs for you, the tip thank-you page keeps a random order reference in session storage (gcc_tip_txn) until you close the tab, so a reload does not report the tip twice. We also keep small settings in your browser, such as banners you dismissed and where you paused a blog audio reading. We use Google Consent Mode v2: every page starts with analytics and advertising storage denied. If your IP address places you in the EEA, the UK or Switzerland, Google Analytics does not load until you click "Accept". Elsewhere it loads with storage denied, so it sends only cookieless pings until you click "Accept". Accepting allows analytics storage; advertising storage stays denied while no ads run, and AdSense does not load at present. If you later decline through "Cookie settings", Google Analytics' cookies are removed and the page reloads with analytics storage denied again, and without Google Analytics if your IP address places you in the EEA, the UK or Switzerland.
6. Data retention
Account data: We keep your account data until you ask us to delete it. If you request deletion, we will remove your email and subscription record from our database within 30 days. Community submissions: We retain community-submitted data according to the following schedule: • Immigration journey entries (OPT, H-1B, PERM milestones): 3 years • Consular case data (appointments, interview outcomes): 3 years • Green card community timelines (EB category timelines): 5 years • Consular alerts (closures, policy changes): 2 years • Voting hashes (hashed IP address and user agent): deleted at our monthly cleanup once they are more than 90 days old After the retention period, data is permanently deleted from our database in our next monthly cleanup. Deleted data can remain in our database provider's restore history for a limited time. Other records: Accounts, newsletter sign-ups, alerts, saved cases, case-status sign-ups, purchase records and our log of sent emails are not deleted automatically. Unsubscribing stops our emails and marks your sign-up as unsubscribed, but does not delete it. You can delete your own alerts on the site, and ask us to delete the rest (see below), except purchase records we must keep for tax or legal reasons. Backups: Each monthly backup email (Section 7) is kept in the site owner's mailbox and is not deleted automatically, so a record deleted from our database can remain in earlier backups. Deletion requests: You may request deletion of any community submission you made while signed in, or request full account deletion, by emailing hello@greencardclock.com. We will process your request within 30 days.
7. Security
We use HTTPS for all connections. Passwords are never stored: authentication is handled entirely by Google. Payment data is handled entirely by Stripe. Within GreenCardClock, access to customer data is limited to our application and two administrators, the site owner and one trusted collaborator, who sign in with Google-verified accounts and can see account, subscriber, payment and recent email records in our admin pages. Once a month, our system emails a backup of our account, newsletter, alert and case-status tables to the site owner's own mailbox only, as an AES-256 password-protected ZIP file. The password is never sent by email.
8. Your rights (GDPR / international users)
If you are located in the European Economic Area (EEA), United Kingdom, or Switzerland, you have the following rights under data protection law: • Right to access: request a copy of the personal data we hold about you • Right to rectification: request correction of inaccurate data • Right to erasure: request deletion of your data ("right to be forgotten") • Right to data portability: receive your data in a structured, machine-readable format • Right to restrict processing: request that we limit how we use your data • Right to object: object to processing based on legitimate interests • Right to withdraw consent: withdraw consent at any time where processing is based on consent To exercise any of these rights, email us at hello@greencardclock.com. We will respond within 30 days. Legal basis for processing: We process your data based on (a) your consent (newsletter subscription, cookie consent, and Google Analytics, which in the EEA, the UK and Switzerland runs only after you click "Accept"), (b) performance of a contract (providing our service to registered users), and (c) legitimate interests (security, service improvement, and the location check in Section 2 that decides how Google Analytics runs). If that check places you outside the EEA, the UK and Switzerland, for example because you use a VPN, Google Analytics' cookieless pings (Section 2) are sent on the basis of our legitimate interest in measuring how the site is used. Our data is stored in the United States via secured cloud infrastructure providers, and some of the services in Section 4 may process it in other countries. If you use GreenCardClock from outside the United States, your data is transferred to the United States and to the countries where those services operate. If you believe we have not adequately addressed your data protection concerns, you have the right to lodge a complaint with your local data protection authority.
9. Community data and public display
When you submit immigration journey data, a green card timeline, or consular case data, this information is displayed publicly on our platform to help other immigration applicants. The following information is never publicly displayed: • Your email address • Your IP address or any network identifier • Your Google account details The following information may be publicly displayed as part of your submission: • Immigration milestone dates (filing dates, decision dates, etc.) • Visa type, country of birth, consulate city, employer type/industry, and state • Service center, receipt prefix (first 5 characters only, e.g., "MSC24"), and decision outcomes • Free-text notes you provide (limited to 500 characters) • Your verification level badge (Anonymous, Email Verified, or Gold Verified) • Vote counts (helpful/suspicious) from other users Automated quality checks: Submissions are automatically checked for statistical plausibility. Entries with dates or timelines that fall significantly outside normal ranges may be automatically flagged and excluded from aggregated statistics until manually reviewed. Community moderation: Other users can vote submissions as "helpful" or "suspicious." Submissions flagged as suspicious by multiple users or by our automated systems may be hidden from public view. You may report inaccurate submissions. By submitting data, you confirm that the information is truthful to the best of your knowledge. You understand that your submission will be visible to other users and used in aggregated statistics.
10. Children
GreenCardClock is not directed at children under 13. We do not knowingly collect data from children under 13.
11. Changes to this policy
We may update this policy as our service evolves. We will update the effective date at the top of this page. Continued use of the service after changes constitutes acceptance of the updated policy.
12. Contact
Questions about this policy? Email us at hello@greencardclock.com.