Privacy

Hourmark Privacy

What Hourmark records, when it records it, and how to manage your data.

Effective date
Last updated
Contact
aryanbaki [dot]dev [at] gmail.com
Your data

Study records stay in Chrome by default. Optional Google sign-in enables cloud backup through Supabase. You can export your data or manage deletion in Settings.

1. Introduction

Hourmark is a Chrome extension that records how long you study, organises that time by course and task, and shows which websites the time went to.

This policy covers three things: what information Hourmark handles, when it handles it, and what control you have over it.

It is built by Aryan Baki, an independent developer. Google sign-in and account backup are optional. You can use the study timer without signing in.

2. Information Hourmark processes

Study information you create

  • Course names, descriptions, colours and icons
  • Task names, notes, colours, icons, cumulative study goals and optional per-session planned durations
  • Session dates, start and end times, and duration
  • Paused time within a session
  • Manually recorded study time
  • Notes you write, including rich text and any images you insert
  • Completion status for courses and tasks
  • Your settings — website dark-mode preference, idle threshold and automatic pause, retention period, view preferences, timer configuration and website blocklist

Browsing information processed during an active study session

  • Website hostname, for example wikipedia.org
  • Page URL and path, after the redaction described below
  • Page title
  • Search terms taken from a URL's query string, such as the q= value on a search results page
  • Time spent on each website, and the timestamps needed to build your reports
  • Whether you were idle, or had Chrome in the background

Derived work progress and completion notifications

The Admin page in this test extension offers local sample tools without sign-in or email restrictions. Only the extension dashboard can change fixtures. Samples affect charts and exported backups, earn no XP and follow your existing optional cloud backup. The tools do not change account ownership, enable sync or grant access to another user's data.

Hourmark derives XP and time milestones locally from automatically recorded work, including work outside Chrome. Pauses, breaks, manual entries, sample data and known distraction intervals do not earn XP. Configured website rules identify known distractions; browser metadata cannot determine mental attention. This calculation preserves your study totals and uses no additional page collection.

Local derived metadata includes credited work amounts keyed by session ID, an exclusion flag on activity intervals, completed timer rounds, task queues, pending completion choices and notification delivery status. Reward credits remain after activity-detail retention or deletion so retries cannot award the same work again. Clear all data resets them. These fields are included in JSON backups and your existing optional account backup when you enable sync.

Work and break notifications use Chrome's notification API and are enabled by default. You can disable them in settings. Browser notifications are silent and show generic phase text without task names, website details or page content. A notification click opens Hourmark; it does not start work or mark a task complete. Your completion choices remain saved when Chrome or the operating system blocks notification delivery.

Start reminders and local timer sound

Start reminders are enabled by default. They can appear after opening Chrome or returning after 30 minutes of observed idle, locked or outside-Chrome absence. This observation runs independently of study collection and automatic pause. It stores only local scheduling timestamps, a local date for Skip today, and opaque occurrence/tab/document claims. It does not save webpage addresses, titles, body text or input, and this device state is excluded from backups. Running work and breaks are not interrupted; paused sessions can offer Resume. You can dismiss, skip today or turn reminders off.

Project and task choices and new-task text stay inside an extension-origin frame, separated from the website. The page receives only a public dialog identifier and generic labels, not your catalog or typed task names. Temporary document/navigation identity and private dialog credentials live in Chrome session storage, excluded from backups and cleared on browser restart. Web Navigation permission detects real document and single-page navigation changes so an old dialog cannot change a newer session. It does not add browsing-history collection.

Work and break boundaries can play a short tone generated entirely inside an extension offscreen document. No sound file is downloaded, no microphone is used, and no audio leaves the device. Mute alerts persists in settings and is separate from browser notifications. Boundary and delivery status are saved before delivery so alert failures cannot lose your recorded time or completion choices.

Website appearance outside a study session

Website appearance runs on supported webpages even when you are not studying. It reads page styles and computed colours locally to generate Dark or Light colors and apply brightness, contrast, sepia, and grayscale, or uses supported native dark styling with the default dark filters. The bundled engine may request a page's linked stylesheets with credentials omitted. AO3's native Reversi stylesheet is also requested from AO3 with credentials omitted; this does not change your AO3 account settings or page URL. These styling reads are not saved as browsing activity and are not sent to Hourmark's backend. The Website appearance panel controls styling and a host-only site list. Hosts include subdomains; pasted page URLs save only the host, without paths, queries, or credentials. These preferences are included in local backups and in cloud backups when you opt in. Styling does not start study collection. Chrome and extension pages and the Chrome Web Store are unsupported. The moon button opens the panel; Hourmark's own interface remains dark.

Redaction applied before study records are stored

Before a web address is written to a durable study record, Hourmark removes:

  • any username or password embedded in the address;
  • the fragment — everything after #;
  • any query parameter whose name looks credential-bearing, including token, access, auth, authorization, bearer, code, credential, jwt, key, oauth, password, refresh, secret, session, signature and signed.

Only http and https pages are recorded. Chrome's own internal pages and other address schemes are never recorded.

Page content is not collected. Hourmark does not read, extract, analyse or store the text or contents of the pages you visit. It records the address and title of the page, not what is on it.

3. When information is processed

Browsing information is recorded only during a running focus phase of a tracked study session. Specifically:

  • While focus is running — website activity is recorded.
  • During a Pomodoro break — no website activity is recorded, and break time is excluded from study totals.
  • While a session is paused — no website activity is recorded. Paused time is also excluded from your study totals.
  • After a session is stopped — no website activity is recorded.
  • When no session exists — no website activity is recorded. Installing Hourmark and never pressing start records nothing about your browsing.
  • Manual time entry — records only the course, task, date, duration and any note you type. No browsing information is attached, and none is invented.

4. How information is used

Information is used only to operate the features of the extension:

  • To run the study timer and keep its elapsed time accurate
  • To connect recorded time to your courses and tasks
  • To build your session history
  • To show which websites your study time went to
  • To calculate the totals and charts on your dashboard
  • To recover a session that was interrupted by a browser restart
  • To save your settings and preferences
  • To support the export, import and deletion features

Your information is not used for advertising, profiling, credit decisions, or sale to data brokers.

5. Local storage and data transmission

  • Hourmark stores your information locally, using Chrome's extension storage on your own device.
  • If you choose Google sign-in, Google and Supabase process your name, email address, basic profile information and account identifier to authenticate you. Hourmark does not request Gmail access.
  • Study data stays local until you click Sign in with Google beside the cloud-backup explanation. That click authorizes automatic backup and restore after Google verifies your account, without a separate enable-sync step. Sync sends courses, tasks, notes, completed sessions, the session-ID XP ledger, retained redacted website activity and preferences, including your blocklist, to the Hourmark Supabase backend. Active sessions stay on their original device; linking waits until the timer ends.
  • Signed-out study tracking needs no backend requests. Website styling can request linked stylesheets from their existing hosts. Sign-in and enabled sync make requests to Google and Supabase. Images, icons and animations are bundled inside it — including the small icons beside website names, which are drawn locally rather than fetched from a favicon service, because requesting one would itself reveal to a third party which sites you had visited.
  • You may deliberately export a backup file. Once exported, that file is an ordinary file on your computer and you control where it is stored or shared.

Hourmark uses chrome.storage.local, not Chrome's synchronised storage. Your working study record remains in this Chrome profile. With account sync enabled, a server backup can restore completed study data after a reinstall or on another device. Account credentials are stored in extension-origin IndexedDB, separate from study records.

6. Chrome permissions

Chrome shows a list of permissions when you install any extension. Here is what each one lets Hourmark do, and why it is needed.

PermissionWhat it allows, and why
Access to all websitesHourmark records addresses and titles during running focus to attribute study time. Students use different course portals, documentation and lecture sites, so those sites cannot be specified in advance. Access also lets Hourmark show its floating timer and redirect sites you explicitly add to an enabled focus blocklist.
TabsTo see which tab is currently active and read its address and title, so time is attributed to the right website.
ScriptingTo show the floating study timer and an eligible start reminder on pages that were already open.
Web NavigationTo validate the current document and invalidate stale dialogs after document or single-page navigation. Raw navigation addresses are kept only in temporary Chrome session storage for eligibility, never added to study records by this feature.
IdleTo pause focus automatically after your configured inactivity threshold or device lock, and resume on activity. You can disable automatic pause; idle time then remains a separate activity category. Independent reminder scheduling observes idle/locked absence without saving page metadata.
AlarmsTo checkpoint a running session periodically, so its elapsed time survives the browser closing or restarting; also to schedule start reminders, phase boundaries and local absence checks.
NotificationsTo display silent work/break notifications and open your saved completion choices. This permission adds no page collection or network transfer.
OffscreenTo generate a short local work/break tone in an extension document when tabs or the popup are closed. No microphone, external audio or additional page collection is used.
IdentityTo open the optional Google sign-in flow and return its result to this extension.
StorageTo save your courses, tasks, sessions, notes and settings on your device. Unlimited Storage keeps the working record and account merge base without Chrome’s 10 MB local-storage cap.
Declarative Net RequestTo redirect top-level navigation to domains and subdomains in your enabled blocklist during running focus. Matching open tabs also redirect when blocking begins. Rules release on breaks, pauses and completion; embedded resources stay available. Your blocklist is stored locally and included in your backup when you enable account sync.

7. Sharing and selling information

Hourmark does not sell or rent your information. Google provides optional authentication, and Supabase stores account identity and your backup when you enable sync. The developer administers this backend. There are no advertising networks or analytics services in the extension.

Hourmark's use of information received from Google APIs adheres to the Chrome Web Store User Data Policy, including the Limited Use requirements.

8. Stripe and optional support

Supporting Hourmark financially is entirely voluntary, and no payment flow is live yet. When one is added it will work as described below, and this section will be updated with the date it went live.

  • Choosing "Support Hourmark" opens a payment page hosted by Stripe in a new browser tab.
  • Stripe processes your payment and billing information under Stripe's own privacy policy.
  • Hourmark does not receive or store your full card details.
  • Supporting Hourmark does not unlock any features. The extension is fully functional without it.
  • Your study records are never sent to Stripe. The payment page has no connection to the extension's data.

9. Data retention, export and deletion

Your information stays on your device until you change or remove it.

  • Automatic retention — detailed website-activity records are kept for a period you control in Settings. The default is 90 days, adjustable from 1 day to 10 years. Older detail is removed automatically.
  • Delete individual records — any session, course, task or note can be deleted from the dashboard.
  • Delete website detail only — Settings can erase all retained page and domain information while keeping your session durations and totals.
  • Delete everything — Settings includes a "clear all local data" action.
  • Export — you can save your sessions or website activity as CSV, or take a complete JSON backup that can be restored later.
  • Uninstall — removing the extension from Chrome removes its locally stored data with it.

Signing out pauses sync and keeps local data. A verified sign-in during an active timer keeps a pending linking choice in private extension storage and completes it automatically when the timer ends. Cancelling a later chooser, signing out, revoked account access or requesting cloud deletion clears that choice. Account switching and conflict resolution retain local recovery copies. Account metadata and these copies remain until the extension is uninstalled; clearing the current study record does not remove them. Uninstalling removes local data and credentials but keeps an enabled account backup for restoration. Account controls let you export or delete the cloud backup; deletion also disables automatic sync on that device. The server keeps a deletion revision, and the extension asks you to choose before recreating a deleted backup. Clearing local data while linked updates your cloud backup at the next sync. Supabase infrastructure backups have separate provider-managed retention. Contact the developer below to request deletion of your account identity.

10. Data security

Local tracking uses Chrome’s extension storage. Optional cloud backups use HTTPS and database access rules that restrict each signed-in user to their own backup. Server administrators retain administrative access.

Beyond that, Hourmark limits data handling to what its features actually require, and it redacts web addresses before storing them, as described in section 2. It relies on the isolation and storage protections Chrome gives extensions.

No software can promise perfect security, and this policy does not. Your device, your Chrome profile and any backup file you export are ultimately in your hands.

11. Children's privacy

Hourmark is intended for students in higher, professional and continuing education. It is not designed for or directed at young children, and optional Google sign-in processes the consenting user’s name, email address and account identifier.

12. Changes to this policy

This policy may be updated when Hourmark's features or data practices change. The "Last updated" date at the top of this page identifies the current version, and material changes will also be noted in the extension's release notes.

13. Contact

Questions about this policy, or about how Hourmark handles information:

  • Developer: Aryan Baki
  • Email: aryanbaki [dot]dev [at] gmail.com

Please do not include browsing history, screenshots of private pages, or other sensitive information when asking for support. It is never needed to answer a question about Hourmark.