Legal
Privacy policy
Last updated: 21 July 2026
1. Who is responsible for your data
The data controller for the personal data described here is [PLACEHOLDER — owner’s legal name], at [PLACEHOLDER — registered address], reachable at [PLACEHOLDER — contact email address].
Full contact details are on the contact page. We have not appointed a Data Protection Officer; we are not required to, because we do not carry out large-scale monitoring or large-scale processing of special-category data.
2. What personal data we collect
Everything below is data you type into the signup or profile form, or data the service generates about your use of it. We do not buy personal data, we do not enrich your profile from third-party sources, and we do not scrape you — we scrape job ads.
Account
- Email address — the only required field. It is your identifier and the delivery address for everything we send.
- Consent and confirmation timestamps — when you signed up, when you confirmed your address, and when (if ever) you unsubscribed. We keep these to prove that consent was given.
- Delivery settings — your mode (active, watch-only, or paused) and whether instant alerts are switched on.
Job-search profile (all optional)
- Role keywords and seniority level.
- Cities you would work in, and your remote-work preference.
- Your skills.
- Whether you need visa sponsorship. We treat this field with particular care, because in practice it discloses something about your immigration status and therefore, indirectly, about your nationality. It exists for one reason: to stop us sending you jobs you cannot legally take. It is never sold, never shared for advertising, and — see section 5 — it is one of the reasons the personal side of our processing is deliberately kept away from certain AI providers.
- Whether you want English-language roles only, and your preferred language for the emails.
- Your salary expectation, in SEK per month.
- Free text you write about yourself, and (in watch mode) free text about what a step up would look like for you. This is free-form, so it contains whatever you choose to put in it. Please do not put health data, political opinions, union membership or similar special-category information in these boxes — we do not need it and we do not want it.
- A numerical embedding of your profile — a 384-number vector derived from your own text, used to find similar job ads by meaning rather than keyword. It is computed on our own server by a local model (all-MiniLM-L6-v2); no third party is involved in producing it.
Generated by using the service
- Matches — which job ads we selected for you, the match score, and the short generated text explaining why it fits, including any draft outreach message and any red flags we spotted.
- Digest records — when a digest was sent, which jobs were in it, and whether it succeeded, was skipped for lack of good matches, or failed.
- Feedback — the one-tap outcome buttons in our emails and on your account page (applied, dismissed, got an interview, hired) and, for dismissals, the optional reason you pick.
- Email log — one row per send attempt: the address, the kind of email, the subject, which provider we used, the provider’s message ID, whether it succeeded, any error, and the rendered body of the email itself. The body is kept so we can see exactly what you received when you tell us something went wrong. It is deleted on a much shorter clock than the rest — see section 6.
- Login sessions — we store only a SHA-256 hash of each magic-link token and each session token, plus its expiry and whether it has been used or revoked. The usable value of the token exists only in the link in your inbox and in the cookie in your browser.
Technical data
- IP address, for abuse prevention. Our signup and login endpoints are rate-limited per IP; that counter lives in the server’s memory only, covers a rolling window of about an hour, and is lost whenever the process restarts. Our web server also writes standard access logs, which include the requesting IP address, to the server’s log stream. Retention of those logs is [PLACEHOLDER — server log retention — owner to confirm].
- Operational run records about our own background jobs. These contain no reference to any user and are not personal data.
- Daily aggregate statistics — counts of leads sent, applications, interviews and dismissals across all users. These are counts only, with no user reference, and are not personal data.
We do not use analytics, advertising, tracking pixels, fingerprinting or third-party embeds anywhere on this site. See the cookie notice.
3. Why we are allowed to process it (legal basis)
Your consent — Article 6(1)(a) GDPR — for the service itself: storing your profile, matching it against job ads, and emailing you the results.
Consent is collected by double opt-in, which is also what Swedish marketing law (marknadsföringslagen 2008:486, § 19) requires before anyone may send marketing email to a natural person. Concretely: when you submit the signup form we record the moment of consent and send you one confirmation email, and nothing else. That link is valid for 48 hours. Until you click it, your address is confirmed for nothing and no digest, alert or other email will ever be sent to it. Clicking it records your confirmation and starts the service.
You can withdraw consent at any time, and withdrawing is exactly as easy as giving it: the one-click unsubscribe link at the bottom of every email we send, or the delete button on your manage page. Withdrawal does not affect the lawfulness of processing before you withdrew.
Legitimate interests — Article 6(1)(f) GDPR — for a narrow set of things consent does not sensibly cover: rate-limiting and access logs to keep the service from being abused, and the email log we need to diagnose delivery failures and to demonstrate that we honoured your consent and unsubscribe choices. Our interest is running a working, non-abusable service; the impact on you is small and the data is short-lived. You may object to this processing (see section 8).
Legal obligation — Article 6(1)(c) GDPR — where we have to keep something to comply with the law, for example records demonstrating compliance with the GDPR itself.
We do not rely on consent as a condition of anything else, we do not bundle consents, and we never process your data for automated decisions producing legal or similarly significant effects. Our matching is automated, but its only output is a suggestion in an email that you are free to ignore.
4. What we use it for
- Finding job ads that fit you, and ranking them. Your profile is compared against ads both numerically (embeddings, computed on our own server) and by a language model that writes the short “why this fits you” text and the draft outreach message.
- Sending you the twice-weekly digest, occasional instant alerts for an exceptional match, the monthly market note if you are in watch mode, and transactional email (confirmation, sign-in links, manage links).
- Not sending you the same job twice, and not sending you a digest at all when nothing cleared the bar.
- Improving the quality of what we pick, using your feedback taps.
- Security, abuse prevention, and debugging delivery problems.
We do not sell your personal data. We do not share it with employers or recruiters. We never apply for a job on your behalf and we never give your details to a company whose ad we show you — if you contact them, you contact them yourself.
5. Who else processes your data
We keep this list as short as we can. Each of these is a processor acting on our instructions under a data processing agreement.
| Recipient | What it gets | Where |
|---|---|---|
| [PLACEHOLDER — hosting provider] (server hosting) | Everything, at rest: the application and its PostgreSQL database run on a single server we rent. The database is self-hosted — it is not a third-party managed database service. | [PLACEHOLDER — data centre country/region] |
| Resend (email delivery) | Your email address and the full rendered body of each email we send you — which means the job matches and the personalised “why you fit” text in it. | United States (see section 7) |
| Anthropic, reached through OpenRouter (AI matching) | Your profile fields — role keywords, seniority, cities, skills, salary expectation, your free text, and the sponsorship flag — together with the public text of the candidate job ads, in order to rank them and write the explanation. | United States (see section 7) |
| DeepSeek (AI job-ad reading) | Nothing about you. Public job-ad text only — never your profile, your email address, or any other personal data. This boundary is enforced in our code, not by policy. | Outside the EU/EEA |
The two-tier split is the important part. Our AI processing is deliberately divided into two stages that cannot mix:
- The public stage reads job advertisements — text that was already published on the open internet — to work out things like the language of the ad, the seniority, and whether it mentions visa sponsorship. It contains nothing about you. This is where the cheap provider (DeepSeek) is used.
- The personal stage is the only place your profile is sent to a language model. It is restricted in code to an allow-list of providers with a suitable data protection posture. Requests are pinned to Anthropic as the upstream, provider fallback is switched off, and the request explicitly denies use of the data for training or collection. Sending personal-stage data to the cheap provider is not a setting we could turn on by mistake — the application refuses to start if it is configured that way.
That split exists precisely because the personal stage carries fields like your sponsorship need. We may in future move the personal stage to an EU-based model provider or to a direct contract with the model vendor; either change makes the boundary stricter, not looser, and we will update this page if the list of recipients changes.
Where we get job ads from — Arbetsförmedlingen’s Platsbanken via the JobTech Development open API, and the public career pages and applicant-tracking systems of employers (Teamtailor, Lever, Greenhouse, Ashby, Jobylon, Workable and plain company websites) — is a one-way street. We read from them. We never send them anything about you.
Beyond the table above we disclose personal data only if we are legally compelled to, for example by a valid order from a competent authority.
Owner action before launch: confirm and, if necessary, correct this list, and make sure a signed DPA is in place with each entry — [PLACEHOLDER — confirm DPA signed with hosting provider, Resend, OpenRouter and Anthropic].
6. How long we keep it
| Data | Kept for |
|---|---|
| Your account, profile, matches, digest records and feedback | As long as you have an account. Deleted immediately and permanently when you delete your account or ask us to. |
| The rendered body of each email we sent you | 30 days, then wiped. The record that the email was sent survives; its contents do not. |
| The email log row (address, kind, subject, provider, delivery status) | 365 days, then deleted. |
| Login and session tokens | A sign-in link is valid for 15 minutes and can be used once. A browser session lasts 30 days. Signing out revokes it immediately; all rows are deleted with your account. |
| Rate-limiting counters (IP-based) | About an hour, in memory only, and lost on every restart. |
| Operational run records (no personal data) | 90 days. |
| Daily aggregate statistics (no personal data) | Kept indefinitely. These are counts across all users and cannot be traced back to you. |
We do not currently delete accounts automatically for inactivity. If you stop using the service, unsubscribe or delete your data — those are one click each. Backups: [PLACEHOLDER — backup retention and where deleted data ages out of backups — owner to confirm once off-site backups are live].
7. International transfers
Our server and database are in [PLACEHOLDER — data centre country/region]. Some of our processors are outside the EU/EEA:
- Resend (email delivery) and OpenRouter / Anthropic (the personal AI stage) are United States companies. Transfers rely on the European Commission’s Standard Contractual Clauses and, where the provider is certified, the EU–US Data Privacy Framework — [PLACEHOLDER — confirm the transfer mechanism actually in place for each provider].
- DeepSeek processes data outside the EU/EEA as well, but receives only public job-advertisement text and no personal data at all, so no transfer of your personal data takes place.
You can ask us for a copy of the safeguards that apply to any of these transfers.
8. Your rights
Under the GDPR you have the right to:
- Access your data and get a copy of it.
- Rectify anything inaccurate. Your profile is directly editable at any time on your manage page or in your account.
- Erase your data. There is a delete button on the manage page and in your account; it performs an immediate hard delete of your account, profile, matches, digest records, feedback, sessions and email log. Nothing is soft-deleted, archived or retained “for analytics”.
- Restrict or object to processing — including our legitimate-interest processing. Pausing your account stops all matching and email without deleting anything.
- Portability — receive the data you gave us in a structured, machine-readable format. Ask us and we will send it.
- Withdraw consent at any time, using the unsubscribe link in the footer of every email we send, or from your manage page. Unsubscribing stops every kind of email: digests, instant alerts, and the monthly note.
- Complain to a supervisory authority.
Access, portability and any request you cannot complete yourself: email [PLACEHOLDER — contact email address]. We answer within one month, as the GDPR requires, and we do not charge for it. We may need to verify that the request comes from the mailbox that owns the account.
The Swedish supervisory authority is Integritetsskyddsmyndigheten (IMY), Box 8114, 104 20 Stockholm, imy@imy.se, +46 8 657 61 00. If you live or work in another EU/EEA country you may complain to your local authority instead.
9. Security
The site is served over HTTPS only. Session and admin cookies are httpOnly and marked Secure in production, so page scripts cannot read them. We never store passwords for user accounts — sign-in is by emailed magic link — and the tokens behind those links are stored only as one-way hashes. The administration panel is separately password-protected with a second factor and is invisible to anyone who is not signed into it. Access to the server and database is limited to the operator.
No system is perfectly secure. If we become aware of a personal data breach that is likely to result in a risk to your rights and freedoms, we will notify IMY within 72 hours and, where the risk is high, notify you directly.
10. Children
This service is meant for people looking for professional work and is not directed at children. Do not sign up if you are under 16.
11. Changes to this policy
If we change what we collect, who processes it, or how long we keep it, we will update this page and change the date at the top. For changes that materially affect you, we will tell you by email before they take effect, and where the law requires it we will ask for fresh consent rather than assume it.