Purplelink

Privacy Policy

Effective date: October 9, 2026 · ben@purplelink.llc

What we collect

When you join a waitlist on this site, we collect your email address and nothing else. The Binnacle waitlist works the same way and also uses the address to invite you to the private beta. We do not collect your name, location, device information, or any other personal data.

When you use a free web tool, the file you upload is processed in memory inside an ephemeral container and discarded the moment your request completes. No copy is written to durable storage or to our logs.

When you use the paid Paper Review tool, we collect: (a) the email address Stripe captures during checkout, (b) the Stripe payment session ID, and (c) the manuscript PDF you upload. The manuscript is sent to Anthropic's Claude API for analysis. When the review finishes, the report is emailed to you as a PDF, through Resend, to the address on your Stripe receipt or to the one you enter at upload. A review bought as part of a volume pack is emailed only to an address entered at upload, so a report never goes to the pack's buyer by default. The manuscript and the annotated PDF are never emailed. The online copy of the report is held in our backend storage for you to read on the status page; it is deleted 30 minutes after you first open it, or after 24 hours if you never open it. The free reference check on the Paper Review page works differently: the PDF you choose is read on our server (Modal), the titles and DOIs of its references are sent to CrossRef, and the file is discarded when the answer is returned. It is not sent to Anthropic, it is not stored, and no email address is asked for.

When you use the GlobePin iOS app, the places, photos, notes, and trip data you create stay on your device and sync only through your own private iCloud account; Purplelink LLC does not collect, see, or have access to any of it. GlobePin has no accounts and no sign-in. The app uses your device's camera (to scan boarding passes), photo library (to attach postcards to places), and location (to set "home" and calculate distances), all processed on-device. If you're on the free version, GlobePin shows ads served by Google AdMob, which collects device identifiers, usage data, and diagnostics to serve and measure those ads; if you grant permission via Apple's App Tracking Transparency prompt, some of that data may be used for personalized advertising. GlobePin Pro (a one-time purchase or monthly subscription) removes ads entirely.

When you use the Momentum iOS app, everything you enter — habits, daily ratings, notes, and streak/badge history — is stored only in the app's local on-device database. Momentum has no accounts, no sign-in, and makes no network requests of any kind: it does not talk to Purplelink LLC's servers or to any third party. The only device permission it requests is for local notifications, used solely to show the daily reminder you configure in Settings; that permission is optional and the reminder itself never leaves your device.

When you use the Vitae macOS app, your records stay in a local database on your Mac. Vitae has no accounts, and Purplelink LLC cannot see your data. The app contacts purplelink.llc for two things, and a third only if you subscribe to Vitae Plus (described below). Once a day it checks for a newer version and, if you choose to install one, downloads it. Unless you hide it, it also fetches, at most once a day, a small file with the text of the sidebar card, which suggests other Purplelink tools and may show a clearly labeled sponsor. These requests carry no account, device identifier, cookie, or library data, and the card's request sends a fixed app name instead of your system version or language. Like any web request, they reveal your IP address to our host, Netlify; we do not log or keep it. We count update downloads as totals per file and per day. If you click the card, a purplelink.llc page opens in your browser with "ref=vitae" or "ref=vitae-card" in the link, so our cookieless page counts can tell that a visit came from the app; it identifies no one. If you then subscribe to Vitae Plus from that page, the tag is recorded with the Stripe order. Vitae's other network use is what you ask for: citation and metadata lookups (Crossref, OpenAlex, Semantic Scholar, ORCID, Zotero), sending your publications to your own Zotero library when you choose Send to Zotero, Grants.gov searches, your mailbox if you connect one, and, when you press Check for Newer Rates, a download of the public venue acceptance-rate list from purplelink.llc, which sends nothing about you or your library. Acceptance rates you record yourself stay in your library on your Mac.

If you subscribe to Vitae Plus, you pay on Stripe's checkout page in your browser, not in the app. The page that then shows your key sends our license function only the Stripe session ID. The function asks Stripe for that session and its subscription and returns a key that contains the date the subscription is paid through, the time the key was made, the plan (monthly or annual), and a short one-way hash of the Stripe subscription ID that serves as the key's anonymous ID. The key holds no name, email address, or other personal data. The function also returns the email address from your Stripe checkout so the page can display it; we do not log or keep it. So that the key can be refreshed, we store the anonymous ID together with the Stripe subscription ID and the plan, and nothing else. After checkout, we email you a link to the page that shows your key, using the address from your Stripe checkout. If you lose the key, the recovery page at /vitae/plus/recover/ takes an email address, looks up Stripe customers with that address and their Vitae Plus subscriptions, and emails a current key to that same address, never anywhere else; the page shows the same answer whether or not a subscription matched. We do not keep the address you type there; to prevent abuse we count requests per address per day under a truncated one-way hash of it. These emails are sent through Resend.

While you have a Vitae Plus key, the app asks purplelink.llc for a current key in the days before the key's paid-through date: about once a month on the monthly plan and once a year on the annual plan, at most once a day, and again when you press Check Subscription Now. It sends only the key's anonymous ID. Our server uses it to look up the subscription's current status in Stripe and returns a new key if the subscription is active, or for a short grace period if a payment is overdue; if the subscription has ended, it returns only that status, and the app stops asking. The request carries no account, device identifier, cookie, or library data, and Vitae makes no such request if you have never entered a key or have removed it. Between these requests, Vitae verifies the key offline on your Mac. If you press Manage Subscription, the app sends the same anonymous ID to our license function, which looks up the subscription's customer in Stripe and emails a link to Stripe's billing page to the address on that customer record, so only the subscriber receives it. The ID is sent in the request body, so it does not appear in your browser's address bar or history; the emailed link works for 24 hours.

When you use the Scholar Utility Belt Chrome extension, it runs in your browser on Google Scholar pages. It has no accounts, no analytics and no Purplelink server. Your saved papers, notes, settings and reading counts stay in the extension's storage in your browser, and the extension sends none of it, nor your searches or reading history, to Purplelink LLC. Journal ranking lists are bundled with the extension and read locally. Depending on the features you turn on, it sends lookups directly from your browser to public scholarly services (OpenAlex, Crossref, Unpaywall, OpenCitations, Semantic Scholar, DBLP, NIH iCite, PubMed, Europe PMC and ROR); a request carries what the lookup needs, such as a DOI, a title, an author name or a search term, and those services handle it under their own policies. Since version 0.6.0 the extension has an optional Pro tier, licensed through ExtensionPay (extensionpay.com), which uses Stripe for payment. If you never open the payment or sign-in page, the extension makes no request to ExtensionPay. When you click Unlock or "Already purchased", it asks ExtensionPay for a random per-install key and stores the key in the extension's storage, which Chrome may sync through your Google account. From then on, each time the extension checks your Pro status it sends that key to extensionpay.com and receives your plan and paid status, which it keeps locally. On extensionpay.com pages, an ExtensionPay script passes payment confirmation back to the extension. ExtensionPay and Stripe receive the key and your IP address like any web request, plus whatever you enter at checkout; Purplelink never sees card details. Purchases go through Purplelink's Stripe account, so purchase records, including the email address you give at checkout, are visible to us there. Installs that were updated from a version before 0.6.0 keep every earlier feature free and skip the license check entirely.

When you play the games at /games/, your streaks, results, achievements and settings are saved in your browser's local storage. If you finish a puzzle, the page also sends an anonymous score (the game, the puzzle number and your result) so it can show how you did against other players. It includes a random identifier your browser made, so that people sharing a connection each count once; the service keeps only a one-way hash of it that is different for every puzzle, so it cannot be followed from one day to the next, and nothing in the score identifies you. Signing in is optional. If you ask for a sign-in link, we store your email address, a display name you choose, and your saved game progress so they follow you between devices. We email you a one-time link through Resend; the link works once and expires after 15 minutes, and a session token on your device keeps you signed in for up to 90 days.

How we use it

Waitlist emails are used for one purpose: to notify you when the app you signed up for launches. You will receive at most one email per app — the launch announcement — except that the Binnacle waitlist may also get a beta invitation before launch. We do not send newsletters, marketing emails, or third-party promotions.

Paid Paper Review submissions are used to produce the manuscript review you paid for. The email Stripe captures is also used to send you a link to start your purchase from any device (and one reminder if it is still unused two days later), to issue refunds if you request one, and to send a small number of purchase-related emails: a tip a few days after your review, a check-in asking how the review held up, and — only if you haven't purchased again — an occasional reminder that the tool exists. If you choose a decision reminder on the upload page, you also get one email around that date about the tools for answering reviewers; the date is stored with your purchase record and nothing else about the manuscript is. That's the entire sequence; we do not add you to a newsletter or send unrelated marketing. Every one of these emails includes a one-click unsubscribe link that takes effect immediately.

ModernTex purchases are paid on Stripe's checkout page. The email address Stripe captures is used to send your download link and license key, to issue a refund if you ask for one, and for two follow-up emails: a few tips on using the app three days after purchase, and a note on checking a manuscript before submission three weeks after. That is the whole sequence. Both emails carry a one-click unsubscribe link, which stops purchase-related follow-up emails for every Purplelink purchase made with that address.

Spreadsheets. The one-time spreadsheets are files you download; they never contact Purplelink. For a live sheet (the Live Citation Dashboard or the Live Funding Feed) we keep your Stripe subscription id, the settings you enter (an ORCID iD or OpenAlex author id, or up to five topics and the agencies you pick) and the private key in your feed links. When your spreadsheet refreshes, our server fetches public data for those settings from OpenAlex, grants.gov, NSF Award Search and NIH RePORTER and returns it; it keeps a copy for up to six hours so repeated refreshes do not repeat the requests. We never see or store your spreadsheet, and the feed carries no email address. The email Stripe captures is used to send your setup link. Ask us after you cancel and we will delete the settings and key.

Feedback you give on the feedback page (linked from the Paper Review status page and from one follow-up email) is stored with the product, your rating, and any comment, name and field you type. No email address is stored with it. A comment is quoted on this site only if you tick the box that allows it, and then only with the name and field you gave. To have an answer removed, email ben@purplelink.llc with roughly when you sent it and what it said.

Submission deadline reminders are optional. If you enter a deadline and an email address on the submission checklist, the Paper Review pages, a LaTeX template page or the response letter template, we store the address, the date, the venue name (if any) and whether it is a first submission or a revision, and send one email a week before the deadline. The address is sent through Resend and used for nothing else; the email has a one-click unsubscribe link, and a second sign-up from the same address replaces the first. To limit abuse, sign-ups are counted per IP address per day.

The submission checklist by email is optional. If you ask for it, we store your email address, the page you signed up on, and the date in Netlify Blobs; we send one email with the PDF through Resend and, occasionally, a short note when a tool changes, and every email has a one-click unsubscribe link that deletes the record. To limit abuse, sign-ups are counted per address and per IP address per day.

ModernTex trial emails are optional. Next to the trial download, the page offers to email you a setup guide (on a phone or a PC, it offers this in place of the download, so the link reaches your Mac) and a reminder before the trial ends. If you enter an address, it is stored with the date you asked, and you get three emails: the setup guide straight away, a few tips four days later, and a note two days after that. Buying ModernTex ends the sequence early. The address is sent through Resend and used for nothing else; each email has a one-click unsubscribe link. To limit abuse, sign-ups are counted per IP address per day.

Outbound Veil does not collect or transmit what you type, and the app has no analytics. The text in the field you are typing in is checked on your Mac and is not stored. Apart from the download, the only network use is the check for a new version, which every copy, trial or licensed, makes. Checking a license key happens on your Mac and sends nothing. The optional setting that stops scroll sounds at the end of a page uses the macOS Accessibility permission to read the position of the scroll bar under the pointer; it reads no content and sends nothing. The optional sounds for Mission Control, Application windows and Show Desktop use the same permission to hear the Dock announce that one of them opened, and read nothing else. Outbound Veil purchases are paid on Stripe's checkout page, and the email address Stripe captures is used to send your download link and license key and to issue a refund if you ask for one. The Outbound Veil web pages count visits like the rest of this site, as described under analytics below.

Outbound Veil trial emails are optional. Next to the trial download, the page offers to email you a setup guide and one reminder about five days later. If you enter an address, it is stored with the date until the reminder is sent, and then it is deleted; if the reminder cannot be sent, or you do not hear from us, the record is deleted after 14 days at the latest. Each email has a one-click unsubscribe link that deletes the record at once. If you have already bought Outbound Veil or the Mac Suite, no reminder is sent. The emails are sent through Resend, the same service that sends order emails.

Legroom trial emails, Keyfeel trial emails and Tapefolio trial emails are optional, and the download works the same without them. After you click the trial download on the Legroom, Keyfeel or Tapefolio page, the page offers to email you setup tips and one reminder about five days later. If you enter an address, it is stored with the date and a random token for the unsubscribe link until the reminder is sent, and then it is deleted; if the reminder cannot be sent, or you do not hear from us, the record is deleted after 14 days at the latest. Each email has a one-click unsubscribe link that deletes the record at once, and our postal address. Before the reminder is sent we look the address up among Stripe purchases, and if it has already bought that app or the Mac Suite, no reminder is sent and the record is deleted. The emails are sent through Resend, the same service that sends order emails. To limit abuse, sign-ups are counted per IP address and per address per day under a truncated one-way hash.

Legroom has no account and no analytics, and its daily measurements, your rules, the log of what was cleaned and the trial clock are stored on your Mac and are not sent to us or anyone else. Legroom reads folder and file names, sizes and dates on your Mac to measure space and to build previews, and it does not transmit them. Apart from two things it does not use the network. The Buy button opens purplelink.llc/legroom/ in your browser. And every copy, trial or licensed, asks purplelink.llc once a day for its update feed: that request carries the app's name and version, which the updater puts in the standard User-Agent, and an update token that is the same in every copy, together with what any web request carries, such as your IP address. It carries no file names, measurements or other information about your Mac. Checking a license key happens on your Mac and sends nothing. When an update is downloaded, we count the downloads of each version, not who made them. Legroom asks for Full Disk Access only if you choose to give it, so it can read folders such as Desktop, Documents and Downloads. The trial download from the Legroom page is counted per IP address per day under a truncated one-way hash, to limit abuse. Legroom purchases are paid on Stripe's checkout page, and the email address Stripe captures is used to send your download link and license key and to issue a refund if you ask for one. The Legroom web pages count visits like the rest of this site, as described under analytics below.

Keyfeel has no account and no analytics. It uses the macOS Input Monitoring permission to be told which key was pressed. It reads the key code and not the character, it does not transmit key codes or anything else you type, and macOS does not deliver keystrokes from password fields to it. Apart from one thing it does not use the network: it asks purplelink.llc for its update feed. That request carries the app's name and version, which the updater puts in the standard User-Agent, and an update token that marks the request as coming from the app, together with what any web request carries, such as your IP address. It carries nothing you type and no other information about your Mac. Checking a license key happens on your Mac and sends nothing. When an update is downloaded, we count the downloads of each version, not who made them. The download from the Keyfeel page is counted per IP address per day under a truncated one-way hash, to limit abuse. Keyfeel purchases are paid on Stripe's checkout page, and the email address Stripe captures is used to send your download link and license key and to issue a refund if you ask for one. The Keyfeel web pages count visits like the rest of this site, as described under analytics below.

Tapefolio has no account and no analytics. It transcribes, labels speakers, finds and replaces identifiers and reads scanned pages on your Mac, and it does not upload your recordings, transcripts, images or key files. Apart from three things it does not use the network. One is the optional model downloads you start in Settings, each once, which come from Hugging Face and carry what any web request carries, such as your IP address and the name of the model. Another is its request to purplelink.llc for the update feed, which carries the app's name, its version, the macOS version and an update token that marks the request as coming from the app, together with what any web request carries, such as your IP address. The third is macOS itself: until you download a speech model Tapefolio uses Apple's on-device speech recognition, and macOS may download Apple's own speech model once, a download that macOS makes under Apple's terms and that has none of your files in it. Nothing you open in the app is in any of these requests. Speaker memory, if you turn it on, stores voice data encrypted on your Mac and sends nothing anywhere. Checking a license key happens on your Mac and sends nothing. When an update is downloaded, we count the downloads of each version, not who made them. The download from the Tapefolio page is counted per IP address per day under a truncated one-way hash, to limit abuse. Tapefolio purchases are paid on Stripe's checkout page, and the email address Stripe captures is used to send your download link and license key and to issue a refund if you ask for one. The Tapefolio web pages count visits like the rest of this site, as described under analytics below.

Find a purchase. If you enter an email address on /recover/, we ask Stripe for ModernTex, Outbound Veil, Legroom, Keyfeel, Tapefolio, Mac Suite and kit purchases made with that address and email the details, including a newly issued ModernTex license key and the license keys for Outbound Veil, Legroom, Keyfeel and Tapefolio, to that same address and never anywhere else. The page shows the same answer whether or not anything matched. We do not keep the address you type; to prevent abuse we count requests per address and per IP address per day under a truncated one-way hash.

GlobePin collects nothing from you directly: there's no account, no server-side data store of your travel content, and no email collection. The only data leaving your device is what Google AdMob collects for free-tier ad serving, described above and below.

Momentum collects nothing from you, directly or indirectly: there's no account, no server-side data store, no email collection, no analytics SDK, and no advertising. All computation (streaks, XP, insights) happens on-device from data that never leaves it.

Daily games. The anonymous scores are combined into a daily tally per game so the result screen can say how many players you did better than; individual scores are not kept with any identity. If you sign in, your email address is used only to send sign-in links and to find your account, and your saved progress, including your result for each day, is used only to restore it on your devices and to work out your all-time rank. Your wins, best streak and average percentile in each game are counted in anonymous per-game tallies so we can say where you stand; the tallies hold numbers, not people. We do not use it for marketing, show you third-party ads in the daily games, or share it with anyone.

Rated puzzles and leaderboards. Chess Puzzles and Sudoku Unlimited keep a puzzle rating. Without an account the rating stays in your browser. If you are signed in, your rating, the number of puzzles you have finished and your best streaks are stored with your account, and the rating service works the rating out from which puzzle ended how and how long it took. Your display name and ratings appear on the public leaderboards only if you turn that on. The same switch lists your wins, best streak and average percentile on the all-time boards for the daily games. You can turn it off at any time, which removes your rows. These two pages show Google AdSense ads, described in the advertising section above; the daily games do not. The chess pages may also carry affiliate links to Chess.com and Chessable, marked as such. If you follow one, the other site learns you came from ours and pays us a commission if you subscribe; we only count the click, without anything that identifies you.

Who we share it with

Waitlist emails are stored by Netlify (our hosting provider) via Netlify Forms and are not shared with, sold to, or disclosed to any third party for any purpose.

Paid Paper Review data passes through these third parties: Stripe (payment processing; their privacy policy governs the card data you enter on Stripe's hosted checkout — Purplelink never sees it), Anthropic (the Claude API processes your manuscript text and images; per Anthropic's commercial Terms, inputs are retained for up to 30 days for abuse monitoring and are not used for model training), CrossRef (titles and DOIs of references in your bibliography are sent to verify that the citations exist), OpenAlex and Semantic Scholar (the DOIs or titles of the references whose abstracts are checked against your claims; nothing from your manuscript's own text), Modal (the cloud platform the review runs on: the manuscript is processed there, and the finished result is held there until it is deleted as described under How long we keep it; Modal states that all user data on its platform is encrypted in transit and at rest, see Modal's security and privacy page),Netlify (hosts this site and the function that receives Stripe's payment notice), and Resend (sends the review-ready email, with the report attached as a PDF, and the follow-up emails; it never receives the manuscript). We do not share data with advertisers, brokers, or analytics services other than the cookieless Cloudflare Web Analytics described below.

GlobePin shares data with Google AdMob for free-tier users only: device identifiers, coarse usage data, and diagnostics, used to serve and measure ads and (if you've granted ATT permission) personalize them. See Google's own privacy policy for how AdMob handles this data. Your travel content itself (places, photos, notes) is never sent to Purplelink LLC or to Google; it stays on your device and in your own private iCloud.

Momentum shares data with no one. There is no third party, ad network, or analytics provider integrated into the app.

Vitae shares data with no one. It has no ad network, analytics SDK, or other third party built in; the sidebar card is served by Purplelink and reports nothing back. If the card shows a sponsor, it is clearly labeled, and Vitae sends nothing to the sponsor. Clicking it opens a purplelink.llc link in your browser that forwards to the sponsor's site, which then sees that visit as it would any other. If you subscribe to Vitae Plus, Stripe processes the payment and holds the subscription, the key refresh asks Stripe for the subscription's status, and Resend delivers the emails with your key.

Scholar Utility Belt shares nothing with Purplelink LLC. Its optional lookups go from your browser to the public scholarly services named above. If you use Pro, ExtensionPay and Stripe process the license and the payment, as described above.

Daily games accounts are stored by Netlify (our hosting provider, in Netlify Blobs), and sign-in emails are sent by Resend. Neither receives anything else about your play.

How long we keep it

Waitlist email: retained until the relevant app launches and the notification is sent, at which point it is deleted.

Paid Paper Review: the report is emailed to you as a PDF when the review finishes, and that copy stays in your inbox. The manuscript, the online copy of the review and the annotated PDF (which contains your manuscript's pages) are deleted from Purplelink's storage 30 minutes after you first open the result, or after 24 hours if you never do. A PDF sent to the free reference check is not kept at all. The Stripe customer record (email + payment session ID) persists in Stripe's systems per their retention policy. Purplelink keeps the Stripe session ID and the review token for 7 days for a single review; for a volume pack, which never expires, it keeps them until 30 days after the last token is used. Anthropic separately retains the inputs of the API call for up to 30 days as described above. The email address used for the follow-up emails described above (for Paper Review, ModernTex, the ModernTex trial and deadline reminders) is deleted 30 days after the last email in its sequence, or as soon as you unsubscribe. The address given for the Outbound Veil, Legroom, Keyfeel or Tapefolio trial emails is deleted when its one reminder is sent, and in any case within 14 days. When you unsubscribe we keep only the address and the fact that you opted out, so that nothing is sent to it again.

GlobePin: Purplelink LLC keeps none of your travel content; there is nothing to retain or delete on our end. Data your device syncs via iCloud is retained and deletable through your own Apple ID/iCloud settings, not through us. Any redemption code you enter is stored only on your device (in the app's local storage), not on a server.

Momentum: Purplelink LLC keeps none of your habit data; there is nothing to retain or delete on our end. Everything lives in the app's local storage on your device until you delete the app or clear its data yourself.

Vitae: Purplelink LLC keeps none of your records. The only thing we keep is the running count of update downloads per file and per day, which contains no personal data. For Vitae Plus, we keep no copy of keys and no email address. We keep the record that links each key's anonymous ID to its Stripe subscription ID and plan, so the app can refresh the key; email us after you cancel and we will delete it. The license function also keeps a per-day request count, keyed by a truncated hash of the requesting IP address, to limit abuse. Stripe keeps its payment record as described for Paper Review above.

Scholar Utility Belt: Purplelink LLC keeps none of your extension data. Everything the extension stores lives in your browser until you remove the extension or clear its data. ExtensionPay and Stripe keep their own purchase records under their policies; email us to ask about a Pro purchase record.

Daily games: progress saved in your browser stays there until you clear it. If you have an account, we keep your email address, display name and saved progress until you delete the account from /games/account/, which removes all of it and ends every session; you can also email ben@purplelink.llc. The anonymous daily score tallies contain no personal data.

You may request deletion at any time by emailing ben@purplelink.llc with the subject line "Delete my data."

Your rights

If you are located in the European Union or United Kingdom, you have rights under GDPR including the right to access, correct, or delete your personal data. To exercise any of these rights, email ben@purplelink.llc.

If you are a California resident, you have rights under CCPA. We do not sell personal information.

Analytics, advertising and cookies

Purplelink does not set cookies of its own. We use Cloudflare Web Analytics to count aggregate page views — total visits, popular pages, and referring sites — so we can tell whether anyone is reading. It does not use cookies, does not fingerprint visitors, does not track you across other sites, and does not store or share data identifying individual users. Cloudflare retains the aggregate analytics data for up to six months; Purplelink LLC keeps no separate copy.

The site also sends a small first-party event count to purplelink.llc itself: a page view, which free tool was run, clicks on a checkout or trial-download button or on an Amazon book link on /desk/, and the words searched for when a site search result is opened, with the referring site and campaign tag if there is one. It carries no cookie, no name or email, and no identifier that follows you between visits, and it is skipped entirely if your browser sends Do Not Track.

Advertising. The home page, the free tools that work on pasted text, the guides, blog posts, LaTeX templates and changelog show ads served by Google AdSense. Third-party vendors, including Google, use cookies to serve ads based on your prior visits to this and other websites; Google's advertising cookies let it and its partners serve ads based on those visits. You can turn off personalized advertising in Google's Ads Settings, opt out of other vendors' advertising cookies at aboutads.info, and read how Google uses information from sites that use its services. If you visit from the European Economic Area, the United Kingdom or Switzerland, a consent prompt from Google asks before any advertising cookie is set, and you can change that choice from the prompt's link on each page. Any page with a file upload, pages where you buy or receive a paid result, the daily digest, the individual product pages, and this policy do not show ads.

The ModernTex product page and its purchase-confirmation page load the Google Ads conversion tag, which tells Google whether an ad click led to a purchase. It may set cookies for that purpose and is covered by the same Google settings above.

ModernTex Customer Match. Purplelink shares the email addresses of people who have purchased ModernTex with Google Ads, through its Customer Match feature. Google matches these against its own accounts using hashed (SHA-256) versions of the address, not the plain email, and uses the match to show ModernTex ads to that group and to build a similar-audience segment for prospecting; Purplelink does not learn whether any individual address matched. No manuscript content, Paper Review data or other product's customer list is included. To be excluded from this list, email ben@purplelink.llc; you can also control ad personalization generally in Google's Ads Settings.

Amazon affiliate links. The book links on /desk/ carry Purplelink's Amazon Associates tag. Purplelink sets nothing when you click one; Amazon may set cookies on its own site to credit the referral, under Amazon's privacy notice. As an Amazon Associate, Purplelink earns from qualifying purchases.

Stored in your browser. The free tools remember a few choices, such as your preferred LaTeX engine, your target journal and the tools you used recently, in your browser's local storage. The submission checklist keeps its ticks there, the ModernTex page notes the date you downloaded the trial so it can lead with the Buy button when you come back, and the paid tools keep an unsent draft of pasted text so a closed tab does not lose it. If you open Paper Review through a colleague's referral link, its code is kept for 30 days and sent with your checkout so the referral credit can be applied. The site also remembers, for 90 days, how you first arrived and how you most recently arrived from somewhere else: the referring site, any campaign tag in the link, whether the visit came from a Google ad (a yes or no, not the ad's click ID), the page you landed on and the date. Direct visits do not change it, and it is not kept if your browser sends Do Not Track. It is sent when you start a checkout, where it is attached to that order in Stripe so we can tell which channels lead to purchases. A short label for the channel of your first arrival (for example "paid:google", "reddit.com" or "direct") also goes with page-view, trial-download and buy-button counts in our own statistics, with no identifier beyond the daily-rotating hash described above, so we can see which channels lead to trials and purchases. When you create a games account, the same short label (for example "google" or "chatgpt.com") is counted once as a sign-up in our own statistics; it is not stored with your account. Apart from the referral code and this record, the information stays on your device, is never sent to Purplelink, and is removed when you clear this site's data in your browser, or with the button below.

We do not use Google Analytics, Meta Pixel or session recorders on this website. The GlobePin iOS app does not use Cloudflare Web Analytics; its free tier uses Google AdMob for advertising, described above.

Contact

Questions about this policy? Email ben@purplelink.llc.