JeffOffice Privacy Notice
Effective November 12, 2026. Published at https://www.jeffoffice.com/privacy, and linked from the website, the apps' File > Options, and the Windows installer. It describes JeffOffice 0.20.1 and later versions until it is updated.
JeffOffice LLC, a Michigan limited liability company ("we"), makes JeffOffice (JeffPub, JeffDeck, JeffWrite, and JeffCrunch). This notice says what the apps and our website send us and others, and what they do not. It was written from the program's code and is meant to match it exactly.
Short version. Your files, their names, and what you type never leave your computer through JeffOffice unless you ask for it (for example, translating selected text). The apps can send usage statistics and crash reports marked with a random install number, never your name. You can turn that off at any time. We keep statistics for 24 months. Our website sets no cookies, has no analytics, and we keep no logs of visits.
1. Who we are
JeffOffice LLC, 2222 W Grand River Ave, Ste A, Okemos, MI 48864, United States, is responsible for the data described here (the "controller" under European law). Contact: info at jeffoffice dot com.
2. What stays on your computer
JeffOffice does not upload your documents. It has no account, no sign-in, and no cloud storage. Settings, recent files, and recovery copies are kept on your computer.
3. Usage statistics
Who sends them. JeffPub, JeffDeck, JeffWrite, and JeffCrunch, when the usage statistics choice is on. It is one choice for the whole suite.
When. About 20 seconds after an app starts, and then at most once a day while it is in use, plus once on the day it is updated to a new version.
What is sent, field by field.
| Field | What it is |
|---|---|
app |
Which app: jeffpub, jeffdeck, jeffwrite, or jeffcrunch |
install |
A random number (a UUID) made up when JeffOffice was first set up. It says nothing about you or your computer. Every app of the suite sends the same one |
version |
The app's version, for example 0.20.0 |
os |
Your operating system's name (for example windows, macos, linux) |
osVersion |
Your operating system's version (on Windows, the kernel version such as 10.0.22631; on macOS, the product version; on Linux, the distribution's type and version) |
lang |
The language of your computer's system settings, for example en_US |
launches |
How many times the app was started since the last report |
counts |
How many times each command was used since the last report (for example file.open.pptx is a count of opens of a .pptx file; the file kind comes from the file's extension) |
The apps also count the kinds of files they open and save (the extension, such as .pptx or .pub). Commands are named by the program (an internal ID), never by anything you typed. The apps send no file names, no text, and nothing from your documents. Each request also carries a label with the app's name and version (for example "JeffDeck/0.20.0").
Where it goes. Over HTTPS to our collector at telemetry.jeffoffice.com (versions before 0.27 use its Railway address, telemetry-production-9964.up.railway.app), which runs on Railway (Railway Corporation), in its United States East region (Virginia). Railway hosts the service for us and has no other use of the data. The collector's code is public in the folder server/telemetry of the source.
What the collector stores. One record per day for each install and app, with the fields above. Our collector's code does not store or log your IP address. Railway's network, like any network, sees the IP address of each request in order to deliver it, under its own privacy policy.
How long. 24 months. Records older than that are deleted automatically.
Who sees it. Only us, through a password-protected page that shows totals and recent crash reports. We use it to learn which features are used and to fix problems. We do not sell or share it, and we do not use it for advertising.
On or off by default. - Windows installer. The setup screens include a box "Send anonymous usage statistics," ticked by default. Untick it to keep statistics off. - First start (Windows after a silent install, macOS, and Linux). The app shows a "Help improve" box with a tick box "Send anonymous usage statistics," ticked by default, and an OK button. Closing the box any way keeps the tick as shown. Untick it and press OK to keep statistics off.
How to turn it off. In any app: File > Options, untick "Send anonymous usage statistics" (it changes all four apps). Or set the environment variable JP_NO_TELEMETRY (any value) before the apps start; nothing is then counted or sent. When you turn the choice off, the app deletes its install number and the counts it kept, and sends nothing more.
Deleting what we already have. File > Options shows your install number. To have the records with that number deleted, copy it before turning statistics off, and email it to info at jeffoffice dot com. We delete those records within 30 days and confirm by email. Without the number we cannot tell which records are yours.
4. Crash reports
When. Only if usage statistics are on. If an app crashes, it writes a small report on your computer. The next time it starts, it sends the report to the same collector and deletes it. If statistics are off, nothing is sent and the report is deleted. At most 10 reports a day are accepted for one install and app.
What is in it.
| Field | What it is |
|---|---|
app, install, version, os |
As above |
kind |
"signal" or "exception" (the kind of failure) |
code |
The signal number or the Windows exception code |
frames |
Up to 64 steps of where the program stopped: for each, the file name of the program or library (for example JeffDeck.exe) and a numeric position inside that file |
when |
The date (UTC) of the crash, within the last 30 days |
No documents, file names, text you typed, or memory contents are included. Crash reports are kept for 24 months, like statistics.
5. Update check
Each app asks GitHub for the list of JeffOffice releases when it starts (on by default; turn it off in File > Options). The request goes to api.github.com and shows GitHub your IP address and the app's name and version. We receive nothing from it. GitHub's privacy statement applies. On Windows, an update downloads the installer from GitHub. The .deb, apt, and snap versions are updated by your system's updater instead.
6. Requests the apps make only when you ask
Each of these goes straight from your computer to the service named. We receive nothing. The service sees your IP address and the request, under its own privacy policy.
- Online Pictures (Insert > Online Pictures in JeffPub and JeffDeck): sends the words you search for, and a label with the app's name, version, and the address of our source code, to the library you choose, Openverse (api.openverse.org) or Wikimedia Commons (commons.wikimedia.org). The pictures then load from the sites where those libraries keep them.
- Translate (JeffPub): after you confirm, opens LibreTranslate (libretranslate.com) in your web browser with the selected text, up to 5,000 characters, in the web address. Your browser sends it there.
- Send Feedback: opens a new issue page on GitHub in your browser, filled in with the app's name and version, your operating system, and processor type. Nothing is sent until you submit it on GitHub.
- ISBN barcodes (JeffPub): may download the International ISBN Agency's range table from isbn-international.org, at most every 30 days.
- Print-ready PDF color profile (PDF/X export in JeffPub): after asking you, downloads the "PSO Coated v3" profile from the European Color Initiative (eci.org), once.
7. Our website (www.jeffoffice.com)
- The site uses no cookies and has no analytics, trackers, advertising, or scripts or fonts from other companies.
- When you pick a language, the page stores the choice in your browser's local storage so the next visit uses it. It is not sent to us. You can clear it in your browser.
- The site and our apt repository (apt.jeffoffice.com) are served for us by Cloudflare, Inc., from its data centers around the world. To deliver each page or file, Cloudflare receives your IP address, the address requested, the time, your browser's name and version, and the page that linked you, under its own privacy policy. We keep no logs of visits; Cloudflare shows us only totals, such as the number of requests per day and per country.
- Downloads are links to GitHub, under GitHub's privacy statement.
8. Why we may use this data (for people in the EU, UK, and Switzerland)
We use usage statistics and crash reports on the basis of our legitimate interest in improving the apps and fixing faults, and on your choice to send them, which you can withdraw at any time in File > Options. Cloudflare handles website requests on the basis of our legitimate interest in delivering the site and keeping it secure. The data is kept in the United States. You may object, and you may complain to your data protection authority.
9. Children
JeffOffice is general-purpose software and is not directed at children under 13 (under 16 in the European Economic Area). We do not knowingly collect personal information from children. If you think a child's information reached us, write to info at jeffoffice dot com and we will delete it.
10. Your rights
Depending on where you live (for example in the EU, UK, California, and other U.S. states), you may have rights to know what we hold about you, to get a copy, to correct it, to delete it, and to object to its use. We do not sell or share personal information, and we do not use it for targeted advertising or profiling. Our size and the data we hold put us below the thresholds of California's and similar state laws, but we honor these requests anyway. Write to info at jeffoffice dot com; for statistics, include your install number (section 3). We will not treat you differently for using these rights.
11. Changes and contact
If we change what the apps send, we update this notice and the README before the release, and change the date above. Questions: info at jeffoffice dot com, or JeffOffice LLC, 2222 W Grand River Ave, Ste A, Okemos, MI 48864, United States.