<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: SubPulse</title>
    <description>The latest articles on DEV Community by SubPulse (@subpulseapp).</description>
    <link>https://dev.to/subpulseapp</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4145882%2Fdda79a8d-0b3c-4a3f-a060-78738c1f58db.png</url>
      <title>DEV Community: SubPulse</title>
      <link>https://dev.to/subpulseapp</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/subpulseapp"/>
    <language>en</language>
    <item>
      <title>How I Built a Privacy-First Subscription Tracker as a Chrome Extension</title>
      <dc:creator>SubPulse</dc:creator>
      <pubDate>Sun, 27 Sep 2026 18:45:49 +0000</pubDate>
      <link>https://dev.to/subpulseapp/how-i-built-a-privacy-first-subscription-tracker-as-a-chrome-extension-17bo</link>
      <guid>https://dev.to/subpulseapp/how-i-built-a-privacy-first-subscription-tracker-as-a-chrome-extension-17bo</guid>
      <description>&lt;p&gt;I built SubPulse because I wanted a simple way to keep track of subscriptions without connecting my bank account or giving a service access to my emails.&lt;/p&gt;

&lt;p&gt;It's a Chrome extension that helps you track recurring subscriptions, upcoming renewals and spending.&lt;/p&gt;

&lt;p&gt;But the interesting part wasn't just building another subscription tracker.&lt;/p&gt;

&lt;p&gt;It was figuring out how to build one that stays useful while keeping the architecture as simple and privacy-focused as possible.&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea
&lt;/h2&gt;

&lt;p&gt;Most subscription trackers can become quite complicated.&lt;/p&gt;

&lt;p&gt;Accounts, financial connections, email scanning, cloud databases, integrations...&lt;/p&gt;

&lt;p&gt;I wanted to take a different approach.&lt;/p&gt;

&lt;p&gt;With SubPulse:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No account is required&lt;/li&gt;
&lt;li&gt;No bank connection&lt;/li&gt;
&lt;li&gt;No email scraping&lt;/li&gt;
&lt;li&gt;No server storing your subscription list&lt;/li&gt;
&lt;li&gt;Subscription data stays in the browser&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The trade-off is that users add their subscriptions manually.&lt;/p&gt;

&lt;p&gt;That makes the initial setup less automatic, but it also means I don't need access to someone's financial data just to tell them when Netflix is renewing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Building it as a Chrome extension
&lt;/h2&gt;

&lt;p&gt;The extension is essentially a small personal dashboard that lives inside Chrome.&lt;/p&gt;

&lt;p&gt;The core data model is relatively simple:&lt;/p&gt;

&lt;p&gt;A subscription contains things like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Name&lt;/li&gt;
&lt;li&gt;Price&lt;/li&gt;
&lt;li&gt;Currency&lt;/li&gt;
&lt;li&gt;Billing frequency&lt;/li&gt;
&lt;li&gt;Next renewal date&lt;/li&gt;
&lt;li&gt;Category&lt;/li&gt;
&lt;li&gt;Status&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;From that data, SubPulse can calculate things such as monthly spending, upcoming payments and category breakdowns.&lt;/p&gt;

&lt;p&gt;The interesting part is that a relatively small amount of structured data can produce quite a lot of useful information.&lt;/p&gt;

&lt;h2&gt;
  
  
  Notifications
&lt;/h2&gt;

&lt;p&gt;One of the main reasons I built SubPulse was to solve a very specific problem:&lt;/p&gt;

&lt;p&gt;You sign up for something, forget about it, and then get charged weeks or months later.&lt;/p&gt;

&lt;p&gt;So renewal reminders became one of the most important parts of the product.&lt;/p&gt;

&lt;p&gt;SubPulse can send Chrome notifications before a subscription renews, and the extension can also show upcoming or overdue renewals through its Chrome badge.&lt;/p&gt;

&lt;p&gt;The goal is simple:&lt;/p&gt;

&lt;p&gt;Don't make people remember their subscriptions.&lt;/p&gt;

&lt;p&gt;Let the tool remember for them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Spending and upcoming payments
&lt;/h2&gt;

&lt;p&gt;Once you know the subscriptions and renewal dates, you can do more than just send reminders.&lt;/p&gt;

&lt;p&gt;SubPulse also calculates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Monthly subscription spending&lt;/li&gt;
&lt;li&gt;Spending by category&lt;/li&gt;
&lt;li&gt;Spending history&lt;/li&gt;
&lt;li&gt;Upcoming payments&lt;/li&gt;
&lt;li&gt;Month-to-month spending changes&lt;/li&gt;
&lt;li&gt;Progress towards a custom monthly spending limit&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where I started thinking about SubPulse less as a reminder tool and more as a small personal subscription dashboard.&lt;/p&gt;

&lt;h2&gt;
  
  
  Supporting multiple currencies
&lt;/h2&gt;

&lt;p&gt;Another problem I wanted to solve was having subscriptions in different currencies.&lt;/p&gt;

&lt;p&gt;For example, someone might have:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One subscription in EUR&lt;/li&gt;
&lt;li&gt;Another in USD&lt;/li&gt;
&lt;li&gt;Another in GBP&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;SubPulse supports multiple currencies and converts them for the spending overview while keeping the original currency for each subscription.&lt;/p&gt;

&lt;p&gt;There is also an offline-rate warning when current exchange-rate data isn't available.&lt;/p&gt;

&lt;h2&gt;
  
  
  Backup without an account
&lt;/h2&gt;

&lt;p&gt;Because the data stays locally in the browser, I still wanted users to have a way to protect their data.&lt;/p&gt;

&lt;p&gt;So I added backup and import functionality.&lt;/p&gt;

&lt;p&gt;Users can export their subscriptions and settings to a file and import them again later.&lt;/p&gt;

&lt;p&gt;This means the product doesn't need a traditional account system just to provide basic data portability.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I've learned so far
&lt;/h2&gt;

&lt;p&gt;The product is now at version 1.2.5.&lt;/p&gt;

&lt;p&gt;I've added quite a few things since the first version:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Renewal notifications&lt;/li&gt;
&lt;li&gt;Upcoming payments&lt;/li&gt;
&lt;li&gt;Spending history and trends&lt;/li&gt;
&lt;li&gt;Multiple currencies&lt;/li&gt;
&lt;li&gt;Budget limits&lt;/li&gt;
&lt;li&gt;Calendar export&lt;/li&gt;
&lt;li&gt;CSV export&lt;/li&gt;
&lt;li&gt;Backup/import&lt;/li&gt;
&lt;li&gt;Search and filtering&lt;/li&gt;
&lt;li&gt;Pause/resume subscriptions&lt;/li&gt;
&lt;li&gt;Dark/light/automatic themes&lt;/li&gt;
&lt;li&gt;English and Spanish&lt;/li&gt;
&lt;li&gt;Weekly renewal summaries for Pro users&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But probably the biggest thing I've learned isn't technical.&lt;/p&gt;

&lt;p&gt;It's that building features and getting people to use them are two completely different problems.&lt;/p&gt;

&lt;p&gt;After around 90 days, SubPulse has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;89 downloads&lt;/li&gt;
&lt;li&gt;34 users&lt;/li&gt;
&lt;li&gt;9 uninstalls&lt;/li&gt;
&lt;li&gt;225 Chrome Web Store impressions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Those numbers are still small, but they're enough to start asking better questions.&lt;/p&gt;

&lt;h2&gt;
  
  
  The next problem: retention
&lt;/h2&gt;

&lt;p&gt;Now I'm trying to understand what actually makes someone come back after adding their subscriptions.&lt;/p&gt;

&lt;p&gt;Is it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A renewal reminder?&lt;/li&gt;
&lt;li&gt;Checking upcoming payments?&lt;/li&gt;
&lt;li&gt;Looking at spending?&lt;/li&gt;
&lt;li&gt;Seeing that a subscription increased in price?&lt;/li&gt;
&lt;li&gt;Checking a monthly spending limit?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I don't know yet.&lt;/p&gt;

&lt;p&gt;And I don't want to guess.&lt;/p&gt;

&lt;p&gt;So my next step is to focus less on adding features and more on understanding user behavior.&lt;/p&gt;

&lt;p&gt;I'm particularly interested in tracking the journey from:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;install → first subscription → first reminder → return&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'd also like to talk to users directly and understand why they opened the extension again — or why they didn't.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's next
&lt;/h2&gt;

&lt;p&gt;For now, I'm focusing on improving the existing product rather than adding features endlessly.&lt;/p&gt;

&lt;p&gt;I want to understand:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Why people install SubPulse&lt;/li&gt;
&lt;li&gt;What makes them add their subscriptions&lt;/li&gt;
&lt;li&gt;What makes them come back&lt;/li&gt;
&lt;li&gt;What eventually makes someone pay for Pro&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I'm also sharing the journey across different platforms and trying to learn what actually works for getting the first users.&lt;/p&gt;

&lt;p&gt;If you're building a Chrome extension, SaaS or another small product, I'd love to hear:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What was the hardest part for you after getting your first users — acquisition, activation, retention or monetization?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;And if you'd like to see SubPulse, I'll leave the link below.&lt;/p&gt;

&lt;p&gt;SubPulse: &lt;a href="https://subpulseapp.netlify.app/" rel="noopener noreferrer"&gt;https://subpulseapp.netlify.app/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>privacy</category>
      <category>showdev</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
