Privacy

This notice describes visits to the DutyTrade website. The notice is currently available in English.

Existing cookies and Google Analytics

DutyTrade uses a NEXT_LOCALE cookie to remember your chosen language for up to one year. The current site also loads Google Analytics (measurement ID G-PWNHCH8KPE), a separate third-party service that may use cookies and sends visitor information to Google. The cookie-less measurement below does not replace or control that existing service; its opt-out handling does not establish how Google Analytics handles GPC or DNT.

Our first-party measurement

We run our own cookie-less, first-party measurement at /__h to understand which pages work and distinguish readers from automated traffic. This measurement uses no third-party analytics. We do not sell or share these measurement records. It does not collect form contents, search terms, link text, or the contents of downloaded files. Our hosting provider and Cloudflare process requests to deliver and protect the site.

What your browser sends

When you open a page or move to a different page path without a full reload, your browser sends its path, without a query string or fragment; the referring domain (up to its last three labels), or the previous page path for a visit from this site; viewport-width classes with lower bounds of 0, 1, 360, 480, 768, 1024, 1440 or 1920+ pixels, and pixel-density classes of 0, 1, 1.5, 2 or 3+; your colour-scheme preference, pointer type, primary language code and time zone rounded to the hour; whether the window fits the screen and has browser chrome; whether the page opened visibly, was reloaded, restored from the back-forward cache or prerendered; and whether the browser reports automation. It also sends a language-count class (0, 1 or 2+), whether local storage worked, a reserved status field fixed at zero (this generic client does not detect 404 pages), and random page and tab session numbers to join records. Changes limited to the URL query string or fragment do not start a new page-view record.

Interaction summaries

When the page is hidden, left, or replaced by a different page path, your browser sends total open time and foreground time in whole seconds; maximum scroll depth in 0/25/50/75/100% classes (or no scroll); page length in 1/2/3/6+ viewport classes; the delay to your first input in milliseconds and its kind (mouse, touch, pen, keyboard, wheel or scroll); an input count; pointer-movement count classes (0, 1, 3, 10 or 50+) and touch-movement classes (0, 1 or 5+); whether a frame was painted or the window resized; and an error count. Click counts describe navigation/header links (nav), breadcrumbs (crumb), footer links (foot), downloads (dl), copy controls (copy), controls with play/preview labels or classes (play, best-effort), other same-site links (int), and other external links (ext). Click destinations, text, pointer coordinates and keystrokes are not sent. Classification is best-effort. A sequence number lets us use the latest of up to ten summaries per page view in reports; earlier raw summaries remain until pruning. Input, click and error counts and timings are sent without caps. The server caps those stored counts at 99 and stored timings at one hour.

Returning visits and browser storage

Your browser keeps hh:fs:v1 in localStorage: first-visit date, last-visit date and a count of visit days capped at 21. The dates and exact counter stay in your browser. Only lower-bound classes are sent: days since first visit 0/1/2/7/14/30+, visit-day count 1/2/3/6/21+, and days since last visit -1 (first visit)/0/1/2/7+. The record starts fresh on your first visit more than 180 days after its first date. sessionStorage holds a random eight-character tab session number under hh:sid; each page also has a random number held only in memory. These values are separate for each site. Clearing the site’s browser data removes the stored records.

Daily tokens and country

The server creates a daily visitor token from your IP address and browser string plus a random secret unique to this site. The secret rotates each UTC day and the old secret is discarded. Raw IP addresses are not stored with page-view records, and the token cannot be recomputed after that day’s secret has been discarded. A second daily token uses only the network prefix (IPv4 /16 or IPv6 /32) to spot automated fleets. The server also records browser and operating-system families, bot and hosting-network flags, and whether browser client hints agree with the browser string. Cloudflare supplies a country code; we keep only its two-letter code, not precise location. Request times are recorded on the server.

Global Privacy Control and Do Not Track

We honour Global Privacy Control (GPC) and Do Not Track (DNT). When the browser exposes either setting, the measurement sends an empty opt-out request and does not read or write its browser storage. If an extension sends only an opt-out HTTP header without the browser setting, browser storage may still be written, but the server stores no page-view record or token. Opt-outs add only to numeric counters by reason; browser families are not recorded for opted-out requests. These signals do not disable the separate abuse-prevention access logs described below.

Separate server logs and abuse prevention

The web server keeps standard access logs containing IP address, browser string, URL and time. Pages also send a separate, content-free request to /api/track/view, logged in those standard server logs to help distinguish scrapers from readers. That request is separate from the page-view measurement at /__h. Standard access logs are kept for 14 days. Raw IP addresses in these logs are separate from the daily tokens stored with page views.

Retention

Raw measurement rows are kept for up to 13 months. Daily totals, such as page and visitor counts, contain no individual records and are kept indefinitely.

Feedback messages

If you send a feedback message, the existing form sends your message, issue category, optional source URL and reply email, page URL and any page context to our server. The server stores these with your IP address and browser string so the maintainer can investigate the request and limit spam. This is separate from the cookie-less page-view records. You can use the same form to ask about or request deletion of your message.

Contact

For a privacy question or request, use our existing feedback form below. Choose the Other category and include an email address only if you want a reply.

Tuyên bố từ chối trách nhiệm: Các con số là ước tính tốt nhất dựa trên các quy định công khai tháng 7/2026 (§122, §232, §301, CBAM, RCEP, v.v.). Xác minh với cơ quan hải quan có thẩm quyền trước khi đưa ra quyết định thương mại.