What this page covers
Jobzyl uses very few cookies and similar technologies. This page explains exactly what we use, why, and how to opt out. It complements our Privacy Policy.
Strictly necessary (always on)
These keep the service working. They cannot be turned off because the site would break without them.
| Name | Purpose | Storage | Lifetime |
|---|---|---|---|
| sb-* (Supabase Auth) | Keeps you signed in across page loads. | localStorage | Session (≤ 1 hour, refreshed) |
| jobzyl_cookie_consent | Remembers your cookie preference ("all" or "necessary"). | localStorage | Until you change it |
| jobzyl_pending_verify_email | The email address you just signed up with, so the verification screen knows who is waiting on a code. | localStorage | Until verification completes |
| jobzyl_admin_session | Short-lived admin session token. Only ever set if you sign in at /admin. | sessionStorage | Until you close the tab |
| jobzyl_auth_next | Where to send you after signing in, for the one route that cannot pass it in the URL. | sessionStorage | Read once, then removed |
Functional (also always on)
These remember your preferences and the work you’ve done locally so it survives a refresh.
| Name | Purpose | Storage | Lifetime |
|---|---|---|---|
| jobzyl_theme | Light / dark / auto preference. | localStorage | Until you change it |
| jobzyl_tracked_v2, jobzyl_search_history | The jobs you tracked and your recent searches. Until you make an account the tracked list lives only here, on this device; making one uploads it and keeps the two in step. | localStorage | Until you delete it or sign out |
| jobzyl_visited_v1 | Remembers which listings you have already opened, so the results list can dim them and you can see where you got to. | localStorage | Until you delete or sign out |
| jobzyl_profile | Your CV-search preferences: display name, target seniority, target minimum salary, remote preference. | localStorage | Until you delete or sign out |
| jobzyl_alerts | Offline cache of the job alerts you created, so the alerts screen renders before the server responds. | localStorage | Until you delete or sign out |
| jobzyl_jobs_cache, jobzyl_jobs_cache_query, jobzyl_jobs_cache_total | The last page of results and which search produced them, so returning to the tab does not re-run the search. | localStorage | Until the next search |
| jobzyl_days_back, jobzyl_locations, jobzyl_remote_only, jobzyl_page, jobzyl_results_per_query, jobzyl_location_explicit | Your last search settings: date range, locations, remote-only, page, results per keyword, and whether you picked the location yourself. | localStorage | Until you delete or sign out |
| jobzyl_pane_width | How wide you dragged the job detail pane. | localStorage | Until you change it |
| jobzyl_hint_board_v1, jobzyl_hint_clicked_v1, jobzyl_hint_track_v1 | Remembers that you have already been shown a one-off tip, so it is not shown again. | localStorage | Until you delete or sign out |
Sensitive client storage (only when you save a CV)
When you save a CV, its text is kept in your browser so the keyword match can run without sending it anywhere. It lives in sessionStorage, so it is discarded when you close the tab, and it is cleared on sign-out.
| Name | Purpose | Storage | Lifetime |
|---|---|---|---|
| jobzyl_cv_scores_v1 | Cached CV-to-job match percentages, so reopening a result does not recompute them. | localStorage | Until you delete or sign out |
| jobzyl_resume | Holds your resume text in the current browser tab for keyword match-scoring. Cleared when you close the tab, and on sign-out. | sessionStorage | Until you close the tab |
Note on jobzyl_cv_scores_v1: Scores derived from your CV. Numbers and job URLs only - no CV text - but it is a record of how well your CV fits specific roles, so it is bucketed with the CV rather than with the preferences.
Note on jobzyl_resume: May contain personal data including special-category data per Art 9 GDPR if your CV mentions health, disability, religious beliefs, or similar. The browser is the only place this key is stored - match scoring runs locally. Server-side AI features (cover letters, interview prep, CV tips) use a separate, encrypted CV record kept in our database; see the Privacy Policy.
Loaded only with your consent
Click Accept all on the cookie banner and we load the tools below. Click Necessary only and none of them are loaded, and no request is made to any of these hosts.
| Tool | Purpose | Host / Region | Cookies? |
|---|---|---|---|
| Plausible | Anonymous, aggregated traffic analytics. No cookies. | plausible.io (EU) | No cookies. No client-side storage. |
| PostHog | Product behaviour analytics (feature usage, funnels). Autocapture and session recording disabled; identified-only profiles. | eu.i.posthog.com (EU) | No cookies: persistence pinned to localStorage (lib/posthog.ts). Stores a distinct-id there. |
| Logo.dev | Company logo images on job cards. The request carries the employer's domain and no user data. Only fired for employers whose domain we can verify; everyone else renders as initials. | img.logo.dev (US) | No cookies set by us. Plain <img> requests to img.logo.dev. |
Logo.dev is US-hosted under EU SCCs. Plausible and PostHog are EU-hosted. All three are off until you consent.
Other third parties
We do not use Google Analytics, Meta Pixel, Hotjar, or any advertising or marketing tracker.
- Our own auth server (sb.jobzyl.com - a self-hosted Supabase stack on Oracle Cloud, EU): sets the session token described above. First-party; no outside company receives it.
- AWS (App Runner + S3 + CloudFront): hosts the site and the API. No tracking cookies.
- Resend (transactional email, EU): does not run in your browser.
- Anthropic (AI features, US): does not run in your browser. Used server-side only when you invoke an AI feature.
- Sentry (backend error tracking, EU region in Germany): does not run in your browser.
Changing your choice
Use the “Manage cookie preferences” link in the footer of any page to re-open the consent banner and change your choice. You can also clear the jobzyl_cookie_consent entry from your browser’s site storage (DevTools → Application → Local Storage → jobzyl.com → delete the row), then refresh.
To opt out of all analytics permanently, choose Necessary only. To delete everything Jobzyl stores about you, use the Delete account button on your account page.
Contact
For cookie or privacy questions, email privacy@jobzyl.com. General support: support@jobzyl.com.