Zero-Telemetry Guarantee

Privacy Policy & Data Practice

Effective Date: September 15, 2026 · Product Version: 0.1.0 · Applies to: PenYield Chrome Extension & penyield.com

Our core pledge: PenYield does not own a backend server, has no user accounts, runs no tracking scripts, and never collects, sells, or transmits your personal or financial data. All telemetry and earnings calculations occur strictly inside your local browser.

1. The Single Purpose of PenYield

PenYield is an open, client-side browser extension designed exclusively to help writers in the Medium Partner Program analyze their own readership engagement (views, reads, read ratio, claps) and historical daily earnings breakdown on a private, localized dashboard.

2. Data We Access & How We Access It

When you click the PenYield icon or view your analytics dashboard, PenYield reads your own Medium account statistics by communicating directly with Medium's internal GraphQL endpoints on https://medium.com/*.

3. Where Your Data is Stored

Everything PenYield reads is saved locally to your device via Chrome's native storage sandbox (chrome.storage.local):

This local cache enables instantaneous dashboard loading, smooth sorting and filtering, offline viewing, and resilient backfilling without repetitive network queries. This data remains strictly on your local disk and is never transmitted to any external server.

4. Explicit List of Chrome Permissions & Justifications

Google Chrome requires extensions to declare all technical capabilities. Here is why PenYield requests each specific permission:

Permission Technical Scope Justification for Use
host_permissions
("https://medium.com/*")
Network requests to medium.com Medium does not offer a public third-party REST/OAuth API for Partner Program stats. This permission allows PenYield to query Medium's internal GraphQL APIs on behalf of your signed-in account to retrieve your own readership statistics and daily payout records.
storage chrome.storage.local Caches your fetched statistics locally on your machine so your dashboard renders instantly and supports high-speed client-side sorting and CSV exports without hitting Medium rate limits.
alarms chrome.alarms API Schedules low-impact periodic background syncs (every 30 minutes for lifetime metrics, every 4 hours for historical daily earnings backfill) so your dashboard stays fresh automatically.
tabs chrome.tabs API When you click the PenYield icon in your browser toolbar, this checks if a PenYield dashboard tab is already open and focuses it, preventing clutter from duplicate tabs.

5. What We Never Do (Data Protection Warranties)

In accordance with Google Chrome Web Store Developer Program Policies:

6. Data Deletion & Retention

Because all data is stored exclusively on your device within chrome.storage.local:

7. Website Privacy (penyield.com)

The informational landing page at penyield.com (and penyield.pages.dev) is hosted on Cloudflare Pages. It serves static HTML, CSS, and SVG assets. It does not use cookies, does not require accounts, and does not track individual visitors.

8. Open Source & Independent Verification

PenYield believes in radical transparency. The complete source code of the extension is publicly available on GitHub for community inspection, security audits, and verification:
https://github.com/hxzhouh/medium-helper

9. Contact & Inquiries

If you have questions regarding this Privacy Policy or PenYield's technical architecture, please contact us: