Altru Auto-Renewal: Keep Promotions and Add-Ons
← Back to Blog

Keeping Promotions and Add-Ons on Altru Membership Auto-Renewals

October 31, 2026

A member joins during your spring sale at $10 off, adds a parking pass, and opts into automatic renewal. Twelve months later the card is charged again, but the renewal lands at full price with no parking pass. The member notices the higher charge, or the missing benefit at the gate, and calls to ask what changed.

That gap between what the member signed up for and what the renewal actually processes is one of the more frustrating parts of running auto-renewing memberships in Altru. Below is how to think about it, what to test in your own setup, and the workarounds that hold up.

Why the renewal doesn’t match the original sale

An automatic renewal is built from the membership level and its price, plus the stored payment method. A discount or promotion is usually applied to the transaction, not stored on the membership itself. Some add-ons work the same way: they were sold next to the membership in the original order, not as a permanent part of it. When the next term comes due, the renewal charges for what the membership level says, and the one-time extras from that first order don’t come along.

Exactly how your renewals behave depends on how your membership programs, levels, add-ons and recurring payments were set up, and that varies a lot from one organization to the next. Before you change anything, find out what your system actually does:

  1. In a sandbox or test environment, create a test membership with a promotion and an add-on, set to auto-renew.
  2. Process the renewal and compare the amount charged and the benefits on the new term with the original.
  3. If you have no sandbox, pull a handful of real members who joined on a promotion last year and compare their original and renewal transactions in revenue history.
  4. If the results don’t make sense, ask Blackbaud support how promotions and add-ons are supposed to carry forward for your configuration. Altru doesn’t give you an obvious setting that makes a discount “sticky,” and support can tell you whether your version has anything you’re missing.

First, decide what the promotion is supposed to do

“Keep the promotion” means different things depending on the offer. Settle this before you pick a workaround:

  • A first-year incentive ($10 off to join, a free month, a bonus guest pass). Most organizations want this to go away at renewal. In that case the system behaves the way you want, and the real job is to tell members about it.
  • An ongoing rate (a senior, educator, or military price; a locked-in founding-member rate). This should repeat every year, which means it needs to live somewhere the renewal can see it.
  • A standing add-on (parking, an extra cardholder, a nanny or caregiver pass). Members expect this to renew with the membership unless they cancel it.

Workarounds for each type

Ongoing discounts: turn the price into a level

If a discount is meant to last, the dependable option is to make it part of the membership structure rather than a promotion applied at checkout. A separate level (or a separately priced version of an existing level) for seniors, educators or founding members renews at its own price. That does add levels to your program, so keep the list short and name them clearly so desk staff and reports can tell them apart.

Free months: extend the term, not the price

“First month free” is hard to express as a dollar discount on an annual recurring charge. Many teams handle it by charging the normal price and setting the expiration date one month later on the first term. The member gets the free month, the renewal charges the normal amount, and nothing needs to carry forward. Make a note on the membership so nobody “corrects” the date later.

Dollar-off renewal offers: plan the exceptions

If you really do want a discount on each renewal (for example, $5 off for staying on auto-renew), test whether your setup lets you change the recurring amount on the commitment itself. If it doesn’t, the fallback is manual: a query of upcoming auto-renewals in the eligible group, and a staff member who adjusts those payments before they process. That only works at small volume. If the list is long, switch to a dedicated level.

Add-ons: check how they’re attached

Find out whether your add-ons are attached to the membership or just sold in the same order. If they’re only in the same order, they won’t come back at renewal. Options include pricing a level that already includes the add-on (a “Family Plus Parking” level, for example) or keeping a list of members with add-ons and re-adding them as part of the renewal routine.

Build a pre-renewal check

Whatever you choose, a monthly review catches problems before members see them. Build a membership query that pulls auto-renewing members expiring in the next 30 to 45 days, along with their level, the amount of their last membership payment, and any add-ons or promotion codes from their original transaction. Sort by members whose last payment doesn’t match the current level price. That short list is where the surprise charges come from.

Save it as a recurring task for whoever owns membership. A list that only gets pulled after someone complains doesn’t prevent anything.

Tell members what renews

Much of the frustration comes from members not knowing what to expect. Your join confirmation and your pre-renewal reminder should both say plainly what the renewal will include and what it will cost. For example: “Your membership renews on June 1 at $95. Your introductory discount applied to your first year only.” A sentence like that heads off most of the calls.

Quick answers

Can a promo code be set to apply to every future renewal?
Not in any way we’d count on. Treat promotions as applying only to the transaction where they’re used, and move lasting discounts into membership levels. Confirm against your own configuration in a sandbox or with Blackbaud support.

Should we tell members their discount is ending?
Yes, before the charge goes through. A clear reminder costs much less than a refund conversation.

Continue reading

How to Track Instructor Activity for Scheduled Programs in Altru

How to Track Instructor Activity for Scheduled Programs in Altru

“How many classes did Maria teach last spring, and which ones?” It sounds like a question Altru should answer in ten seconds. In practice, many education departments end up digging through calendars, email threads, and a payroll spreadsheet to piece it together, because the instructor was never recorded anywhere a query could find. Altru is

How to Turn a Group Sales Overpayment Into a Donation in Altru

How to Turn a Group Sales Overpayment Into a Donation in Altru

A school books a field trip for 60 students, sends a check for the full quote, and then 48 kids show up. The teacher says, “Keep the difference, it’s a gift.” Now you have a group sales order that is overpaid, money that is really a donation, and a deposit that has to balance. The

Can a Spouse Be a Fundraiser in Altru? Solicitor Credit for Couples

Can a Spouse Be a Fundraiser in Altru? Solicitor Credit for Couples

It happens more often than you’d expect. A board member and her husband both care about your capital campaign. She asks a friend for a gift, but it was really his introduction and his follow-up phone call that closed it. Development wants him credited as the fundraiser on that gift. Then someone at the desk

Social Good platform

See it in action

Get started with Social Good

Book a demo to see Social Good Software in action for Altru.

Book a Demo
Social Good platform

See Social Good in action

Tell us a bit about your organization and we’ll take you straight to short demo walkthroughs of the software.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.