A CV is one of the most personal documents most people ever write. This page describes what Tessira actually does with yours — including the one moment when part of it leaves Tessira, and exactly what that part contains.
Last updated: 23 August 2026
Tessira is a CV builder provided by Cubic Pixel, an independent
one-person studio, at www.cubicpixel.co/tessira. For the purposes of data
protection law, Cubic Pixel is the controller of the personal data described on this page.
Cubic Pixel does not operate a public office or a phone line. All privacy enquiries, including requests to exercise your rights, are handled by email at privacy@cubicpixel.co. General questions go to hello@cubicpixel.co. [A registered address and, where required, a representative or data protection officer should be added here before commercial launch.]
Everything below exists because a specific feature needs it. There is no category of data collected "just in case", and there is no profiling of you as a user.
| What | Why it is held | Where it lives |
|---|---|---|
| Your email address | It identifies your account, receives the verification link, and receives a reset code if you forget your password. | Your account record in Workers KV. |
| Your password, as a hash | To check your password when you sign in. It is stored as a PBKDF2-SHA256 hash with a salt unique to your account and 100,000 iterations — a one-way transformation. Tessira cannot read your password, and cannot tell you what it was. | Your account record. |
| Account id, sign-up date, optional profile picture | To run the account and show your avatar in the app. A picture is optional, is cropped in your browser, and is limited to a JPEG or PNG of 200KB. | Your account record. |
| Session tokens | To keep you signed in without asking for your password on every page, and to let a password reset sign every device out. | Workers KV, expiring after 30 days. |
| Your CV content — name, contact details, photo, work history, education, skills, languages, interests, references | This is the document you are building. It is what the editor edits, what the templates render, and what the PDF prints. | Encrypted at rest in Workers KV, in your account's own namespace. |
| Job descriptions you save or fetch | So a CV can be matched against a specific role you are applying for. | Encrypted at rest in Workers KV, in your account's own namespace. |
| AI results you have run | So that reopening a review or a match is instant and costs nothing. | Saved on the CV record itself, encrypted with it. |
| Abuse counters | To stop someone using the sign-up and password-reset forms to send mail to an address repeatedly, and to throttle password guessing. These counters are keyed on a hash of your email address and a hash of your IP address — not on the address itself — and they expire within an hour. | Workers KV, short-lived. |
| Cached renders | A rendered PDF is cached against a hash of the exact content it was made from, so downloading the same CV twice does not re-render it. An AI result is cached the same way. Both expire after seven days. | Workers KV, seven-day expiry. |
Tessira never asks you for special-category data. But a CV is free text, and people legitimately put things in one that data protection law treats as sensitive — a health charity you volunteered for, a religious institution you studied at, a trade union role, a political campaign you worked on. If you type it into a CV field, Tessira stores it, and if you then run an AI review it is part of the text that is sent for review.
You decide what goes in. If something does not need to be on the page, leave it off.
This is the only feature that sends any part of your CV outside Tessira, so it gets its own section and the most careful wording on the site.
An AI review runs only when you click the button that starts one, on a CV you chose, in a mode you chose. There is no background scoring, no automatic re-run when you edit, no telemetry, and no request of any kind to the AI provider unless you initiated it. If you never press the button, nothing about your CV is ever sent for review.
Before anything is transmitted, Tessira builds a separate, anonymised copy of your CV. The original is not sent; the copy is.
| Treatment | Fields |
|---|---|
| Removed entirely | Your name, email address, phone number, postal address, website, and photo. Also any contact details typed into the body of your CV — email addresses, links, phone numbers, postcodes, street addresses and social handles are stripped out of your bullets and summary, whoever they belong to. |
| Replaced with labels | Every employer, client and educational institution becomes "Company A", "Client B", "Institution A". The mapping between the label and the real name stays inside Tessira and is used to put the real names back into the response before you read it. |
| Never sent | Your IP address, your device or browser details, your account, your session, and any Tessira identifier such as a CV id. The outbound request is constructed from scratch, so no cookie, referrer or browser header from your visit is passed on; the provider sees Cloudflare's network, not you. |
| Sent | Your job titles, dates, countries, skills, languages, and the wording of your bullets and summary — the text that actually needs reviewing. |
Two checks run before transmission and both refuse to send rather than take a chance: one rejects the payload if any profile value, name fragment, address word or un-replaced employer name is still present in it, and one rejects it if anything technical — an IP address, a token, a user agent, an account or CV id, a set of coordinates — appears in the exact text about to leave. If either check fires, the review fails and nothing is sent.
Tessira can show you the exact anonymised text that would be transmitted, together with the provider's name, the model, and the list of what was removed and what was replaced. Look at it before your first review rather than taking this page's word for it.
The honest claim is that Tessira removes everything that identifies you and replaces employer names with labels. It is not a claim that the text becomes untraceable. A CV describes one career; someone who already knows you could recognise the shape of it even without a name attached. That is inherent to having a CV reviewed at all, and you deserve to know it rather than be handed a reassuring absolute.
The review is performed by DeepSeek, an external AI provider, at
api.deepseek.com. Tessira does not control that provider's systems and does
not make claims on its behalf about what it does with the text it receives. If you want to
know the provider's own position, read the provider's own current terms. If Tessira ever
changes provider, this page changes in the same release.
A job match sends the same anonymised copy of your CV plus the job description you selected. The job description is third-party text and often contains a recruiter's name, email or phone number, so contact details are stripped from it before it is sent. The role title and the hiring company named in the posting are sent, because they are the thing being matched against.
The result is a machine-generated opinion. It can be wrong, it can miss things, and it is not careers advice, legal advice or any guarantee about your prospects. You remain responsible for everything your CV says. See the terms of service for the full position.
If you paste a job advert's URL, Tessira's own server fetches that public page and tries
to extract the title, company and body text. This is an ordinary HTTP request, not an AI
call. Only https links are fetched, private and internal network addresses are
refused, and the request times out rather than hanging. Your browser is not used to make
the request, so the site you are fetching from does not see your IP address — it sees
Cloudflare's, and a request identifying itself as Tessira. Many large job boards refuse
automated requests, which is why pasting the text yourself is always available and always
the source of truth.
Running a hosted service means other companies are involved. These are the only ones, and each has a specific job.
| Provider | What they do | What they see |
|---|---|---|
| Cloudflare | Hosts Tessira. The application runs on Cloudflare Workers, data is stored in Workers KV, and PDFs are printed by Cloudflare's headless-browser rendering service. | The connection metadata inherent in serving any website, including your IP address, and the stored data itself — which, for CVs and job descriptions, is encrypted before it is written. |
| Resend | Delivers the two transactional emails Tessira sends: your verification link and your password-reset code. | Your email address and the contents of those two emails. Nothing about your CV. |
| DeepSeek | Performs the AI review and the job match, when you start one. | The anonymised CV text described in section 4, and the scrubbed job description for a match. No identity, no account, no IP address, no Tessira identifier. |
Beyond these, your data is not sold, rented, licensed or handed to advertisers, data brokers, recruiters or job boards. If Tessira is ever legally compelled to disclose something, or if the product were ever transferred to another owner, that would be handled honestly and this page would say so before it happened wherever it is lawful to do so.
| Data | Kept for |
|---|---|
| Your account, CVs and job descriptions | Until you delete them, or until you ask for the account to be deleted. |
| A signed-in session | 30 days, or until you sign out, or until a password reset revokes it. |
| Email verification link | 24 hours. |
| Password reset code | 10 minutes, five attempts, single use. |
| Abuse and rate-limit counters | Between 15 minutes and one hour. |
| Cached AI results and cached rendered PDFs | Seven days, then they expire automatically. |
| Daily AI request counter | Two days. |
One honest wrinkle: deleting a CV removes the record immediately, but a cached PDF or a cached AI result derived from that exact content may sit in the cache until its seven-day expiry runs out. Those caches are keyed by a hash of the content, are not attached to a listing, and are not readable through the app once the CV is gone — but they do exist until they expire, and you should know that rather than find it out.
What is in place:
What this is not:
Depending on where you live, you have some or all of the following rights. Several of them you can exercise yourself, immediately, without asking anyone.
| Right | How |
|---|---|
| Access — see what is held about you | Your CVs and job descriptions are visible in the app. For the rest, email privacy@cubicpixel.co. |
| Portability — take it with you | Every CV has an Export JSON action in the editor that downloads the full content as a structured file, no request required. |
| Rectification — correct it | Edit any field in the app; changes save automatically. For your email address, email us. |
| Erasure — delete it | Delete individual CVs and job descriptions in the app. There is currently no self-service button that deletes an entire account; email privacy@cubicpixel.co and the account and everything in it will be deleted. |
| Objection and restriction | Email us. For the AI features specifically, simply not running one is a complete objection — nothing is sent without a click. |
| Withdraw consent | Stop starting AI runs. Existing saved results can be removed on request, or by deleting the CV they belong to. |
| Complain | You can complain to your local data protection authority. Doing so does not require you to contact us first, though it is usually faster if you do. |
Requests are answered by one person, so please allow a reasonable time — the aim is within 30 days. To protect you, a request will be answered to the email address on the account.
Tessira runs on Cloudflare's global network, which means requests are served from wherever you are and stored data may be held outside your own country. The AI provider operates internationally, so running a review or a match may involve the anonymised text being processed outside the UK and the EEA. [The specific transfer mechanism relied on for each provider — standard contractual clauses, adequacy, or otherwise — should be confirmed with each provider's current terms and stated here before commercial launch.]
Tessira is a professional tool intended for adults in or entering the job market. It is not designed or marketed for children, and accounts should not be created by anyone under 16. If you believe a child has created an account, email privacy@cubicpixel.co and it will be removed.
Tessira sets exactly one cookie, and it exists only to keep you signed in. There is no analytics cookie, no advertising cookie, no third-party cookie, and therefore no consent banner. The details are in the cookie policy.
If what the software does changes, this page changes in the same release — that is a rule the project holds itself to, not a courtesy. The date at the top is the date of the last change. For anything that materially affects how your data is handled, you will be told in the app before it takes effect rather than left to notice a date.
Privacy, data and rights requests:
privacy@cubicpixel.co
Anything else: hello@cubicpixel.co
Enquiries are handled by email only. There is no postal address or phone line to publish, and inventing one would be worse than saying so.