← All projects

IssuePulse

One-click feedback links for newsletters. Readers vote with a single click, no signup, and creators see which topics land.

Type
Product
Role
Founder, design and engineering
When
2026 – now
Stack
Next.js, TypeScript, Prisma, Postgres, Better Auth, Astro, Vitest
IssuePulse: Stop guessing what your readers want. One-click feedback links for newsletters.

The problem

Newsletter writers ship an issue, watch the open rate, and then guess. Open rates say a subject line worked. They don’t say whether the topic did. Reply rates are tiny, and nobody fills in a survey form at the bottom of an email.

The product

IssuePulse turns the footer of a newsletter into a one-click poll.

  1. A creator makes a topic (for example “Was this issue useful?”) with 3 or 5 links and their own labels.
  2. They paste the generated block into their footer. It works in Beehiiv, Substack, Kit, Ghost, or anything that can put a link in an email. There are four copy formats: Embed, Linked, Markdown and Plain.
  3. Every reader click is a vote. The reader lands on a short thank-you page and can leave a comment if they want. No account, no form.
  4. The dashboard shows the vote breakdown, a trend chart, issue scores, sponsored vs regular issues, reader comments and a weekly summary. Everything exports to CSV.

It launched on 9 October 2026 and is free during early access.

The hard parts

Corporate mail scanners and privacy proxies open every link in an email to check it. Counted naively, every issue would look like everyone voted for every option. IssuePulse filters scanner and prefetcher traffic before a click becomes a vote, so the numbers mean real readers.

Pages that work with no JavaScript

The vote capture pages are hit straight from an email client’s in-app browser. They’re server-rendered, need no JavaScript and no auth, and stay fast on a bad connection.

Old newsletters live forever in inboxes and archives. A creator can rename a topic, but its slug locks once it has been sent, and old links keep working.

Counting opens without a tracker zoo

An embed pixel counts how often the footer block was seen, so click-through is votes over views, not votes over a guess.

Stack

  • App: Next.js App Router, TypeScript, Prisma on Postgres, Better Auth.
  • Domain logic lives in lib/, outside components, so it’s unit tested with Vitest.
  • Marketing site: Astro, sharing brand tokens with the app.
  • Changelog: a public release notes repo feeds issuepulse.io/changelog.

Results

Early access is open. Numbers on creators, topics and votes will go here once there’s enough to be worth showing.

Try IssuePulse →