Cookie Policy
Last updated: 2026-08-22
01What this page covers
This page lists the cookies and other storage technologies (localStorage, sessionStorage) that MediaJam actually uses on this domain. It is generated from the same inventory that fills the "Cookie preferences" panel, so the two cannot drift apart.
EU and Italian rules (the ePrivacy Directive, art. 122 of the Italian Privacy Code, and the Garante’s cookie guidelines of 10 June 2021) treat browser local storage exactly like cookies — which is why localStorage keys are listed here too.
Domain covered: mediajam.bitleapps.com
02Giving and withdrawing consent
On your first visit a banner offers two equally prominent choices, "Accept all" and "Reject all", plus per-category control. No optional category is pre-ticked. Closing the banner with the "X" counts as a rejection. Scrolling or continuing to browse is not consent, and the site stays fully usable after a rejection.
Your choice is stored for 182 days (6 months), after which you will be asked again. You can change it at any time from the "Cookie preferences" link in the footer of every page, or with the button below.
03Strictly necessary cookies and storage (no consent required)
These run the site, keep you signed in and remember the settings you chose. They are exempt from consent under art. 122(1) of the Italian Privacy Code and cannot be switched off from the panel.
| Name | Type | Set by | Party | Duration | Purpose |
|---|---|---|---|---|---|
| bitle_consent | Cookie | MediaJam | First party | 182 days (6 months) | Stores the choice you made in this banner. Without it the banner would reappear on every page. |
| LOCALE | Cookie | MediaJam | First party | 1 year | Remembers the interface language you picked (it / en). Only set when you change language. |
| sessionid | Cookie | Django (backend MediaJam, stesso dominio / same origin) | First party | Session | Server session, used only by the admin area and the API documentation.Not set during normal app use (authentication uses JWT tokens, not session cookies). |
| csrftoken | Cookie | Django (backend MediaJam, stesso dominio / same origin) | First party | 1 year | Anti-CSRF protection for forms served by the backend.As above: admin area / API documentation only. |
| mediajam-auth | localStorage | MediaJam | First party | Until sign-out or manual clearing | Access and refresh tokens that keep you signed in. Removed on sign-out. |
| mediajam-current-org / mediajam-current-workspace | localStorage | MediaJam | First party | Until manually cleared | Active organisation and workspace, so the app reopens in the right context. |
| theme | localStorage | MediaJam | First party | Until manually cleared | Light/dark theme chosen by the user. |
| mediajam-ui-settings, mediajam-editor-workbench, mediajam-expanded-layers, mediajam-expanded-panels, mj:project-view, mediajam-editor-tour-seen, mediajam-diagnostics, mediajam-campaign-prefs, mediajam-templatize-decisions | localStorage | MediaJam | First party | Until manually cleared | Editor and dashboard interface preferences (open panels, grid/list view, onboarding tour seen). These are settings the user explicitly asked for. |
| mediajam.activeGeneration, mediajam.recoveredCanvasApplied.*, mediajam:checklistDraft:*, mediajam:checklistSubmission:* | localStorage | MediaJam | First party | Until the in-flight job completes | State of in-flight generation jobs and form drafts, so a page reload does not lose them. |
| sentry-* (sessionStorage) | sessionStorage | Sentry (Functional Software Inc.) | First party | Session | Application error diagnostics. Sentry sets no cookies; it uses sessionStorage only and activates on errors.Active only if error monitoring is configured in this environment. |
04Analytics cookies (only with your consent)
Google Analytics 4 (via a Google Tag Manager container) is loaded under Consent Mode v2: until you consent, every storage type is set to "denied", no _ga cookie is written, and Google only receives a signal carrying no identifiers. Google Signals is disabled on the property and data retention is capped at 14 months.
| Name | Type | Set by | Party | Duration | Purpose |
|---|---|---|---|---|---|
| _ga | Cookie | Google Analytics 4 (Google Ireland Ltd.) | First party | 2 years | Pseudonymous browser identifier, used to tell visits apart. |
| _ga_* | Cookie | Google Analytics 4 (Google Ireland Ltd.) | First party | 2 years | Session state for the GA4 property (one cookie per property). |
05Marketing cookies
MediaJam runs no ad networks and no third-party pixels today. The category stays declared for fleet uniformity and currently covers only the referral code.
| Name | Type | Set by | Party | Duration | Purpose |
|---|---|---|---|---|---|
| mediajem_ref | localStorage | MediaJam | First party | Until manually cleared | Referral code read from the /social page URL, kept so a sign-up can be attributed to whoever invited you. |
06Recipients and transfers outside the EU
Analytics data is processed by Google Ireland Limited as a processor; Google may transfer it to the United States under the EU-US Data Privacy Framework and Standard Contractual Clauses. Application error diagnostics, where enabled, is provided by Sentry (Functional Software, Inc.).
TODO (legal): Confirm the recipients and the legal basis for non-EU transfers with the data controller before publishing. This text is a technical draft, not legal advice.
07Managing this from your browser
You can delete or block cookies and local storage from your browser settings at any time. Blocking strictly necessary cookies will however break sign-in and the editor.
For data subject rights and the controller’s contact details, see the Privacy Policy.