Stripe Payment Links expire after inactivity—here’s the math

person using laptop computer holding card

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Stripe Payment Links expire after inactivity—here's the math
Photo by rupixen on Unsplash

Stripe Payment Links are one of the fastest ways to collect money online. No custom checkout page, no embedded form, just a URL you drop into an email, a tweet, or a landing page. But there’s a catch most solo operators learn the hard way: Payment Links expire after 90 days of inactivity.

Not 90 days from creation—90 days from the last completed transaction. If nobody buys through the link for three months, Stripe deactivates it. The URL still resolves, but customers see an error. No email notification. No dashboard warning. Just a dead link and lost revenue.

How the expiration clock works

Stripe Payment Links have two expiration modes: explicit and implicit. Explicit expiration is the one you set yourself—an end date or a maximum number of purchases. Implicit expiration is the 90-day inactivity rule, and it’s enabled by default on all Payment Links created after June 2025.

The clock resets every time someone completes a purchase. If you sell one unit on day 89, the countdown starts over. But if your link sits unused for 90 consecutive days, it stops working. This affects evergreen products more than launches—if you’re selling a $50 course or a one-time audit and only move a few units per quarter, you’ll hit the limit.

Stripe’s reasoning: unused links create support overhead and potential fraud exposure. Fair enough. But the lack of proactive alerts turns this into a silent failure.

Where this breaks real workflows

Payment Links show up in three common places: email sequences, social media bios, and static landing pages. If you’re running a welcome sequence that pitches a paid product on day 14, and that sequence hasn’t fired in three months because your list growth slowed, the link dies mid-funnel. Same for a Twitter bio link to a $20 template pack—if you don’t sell one every 90 days, it’s gone.

The worst case: you’ve embedded the link in a PDF lead magnet or a YouTube video description. You can’t edit it after the fact. The only fix is to create a new Payment Link, update every instance, and hope you caught them all.

Stripe’s dashboard doesn’t flag expired links in bulk. You have to open each one individually to check status. If you’re managing ten products across multiple Payment Links, that’s ten manual checks every quarter.

How to prevent expiration without manual checks

Three options. First, switch to Stripe Checkout Sessions via API. They don’t have the 90-day rule, but you lose the no-code convenience—you’ll need a server or a tool like Zapier to generate the session URL on demand.

Second, use a redirect layer. Instead of linking directly to the Stripe Payment Link, use a short URL you control (Bitly, your own domain, whatever). When a Payment Link expires, you regenerate it in Stripe, then update the redirect target. Your public-facing URL never changes. This adds one extra HTTP request to the purchase flow, but it’s negligible.

Third, set a calendar reminder to test-purchase through each Payment Link every 80 days. Use Stripe’s test mode if you want to avoid real charges, or complete a live transaction and immediately refund it. Not elegant, but it keeps the links active. If you’re running more than five products, this gets tedious fast.

One thing that doesn’t work: adding the Payment Link to a Stripe Customer Portal. The expiration rule applies regardless of where the link lives. Same for embedding it in an iframe or wrapping it in a branded page. The 90-day countdown runs on Stripe’s side, not yours.

What to do if a link already expired

You can’t reactivate an expired Payment Link. You have to create a new one. Stripe preserves the product and price data, so it’s not a full rebuild—just a new link ID. But every external reference needs updating.

Check your Stripe dashboard under “Payment Links” and filter by status. Expired links show as “Inactive.” If you find one, note where it was published: email sequences, social profiles, blog posts, PDFs, anywhere you dropped the URL. Then create the replacement and swap it in.

For email sequences, this is straightforward if you’re using Beehiiv, MailerLite, or ConvertKit—edit the broadcast or automation step, replace the link, save. For static pages or social bios, same drill. For PDFs or videos, you’ll need the redirect-layer approach going forward.

If you’re selling through multiple Payment Links and don’t want to babysit them, consider consolidating. One Payment Link per product is simpler to monitor than five variations for different traffic sources. Stripe’s analytics let you append UTM parameters to track source anyway, so you don’t lose attribution by using a single link.

Bottom line: Stripe Payment Links are fast to set up, but they require maintenance. The 90-day inactivity expiration isn’t a bug—it’s policy. If you’re using them for evergreen products, build a check-in routine or switch to a URL structure you control. Otherwise, you’ll discover the problem when a customer emails to say your checkout is broken.

Running a content-driven online business? One Two Three Send covers the tools, tactics, and infrastructure that solo operators actually use. Subscribe for weekly breakdowns—no fluff, just operator-to-operator details.

Heads up — some links in this article are affiliate links. If you sign up through them, we may earn a small commission at no extra cost to you. We only recommend tools we use ourselves.

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Other newsletters you might like

Love New York

Love New York is a website and newsletter that is dedicated to the promotion of New York as a travel destination. Everything great about the big apple.

Subscribe

Love Spain

Love Spain — in your inbox. Iconic cities, hidden pueblos and the best places to visit in Spain. One short email, every day.

Subscribe

Love Germany

Love Germany — in your inbox Castles, hidden gems and the best places to visit in Germany. One short email, every day.

Subscribe

My Local Dublin

The Dublin you don't see from a tour bus — local stories, hidden gems, food, events and the best of the city, by locals for locals.

Subscribe

Newsletters via the One Two Three Send network.  ·  Want your newsletter featured here? Click here