<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://www.standshare.app/blog/</id>
    <title>StandShare Blog Blog</title>
    <updated>2026-04-17T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://www.standshare.app/blog/"/>
    <subtitle>StandShare Blog Blog</subtitle>
    <icon>https://www.standshare.app/blog/img/favicon.ico</icon>
    <entry>
        <title type="html"><![CDATA[Closing the Books Without the Spreadsheet Ritual]]></title>
        <id>https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual</id>
        <link href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual"/>
        <updated>2026-04-17T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Every booster club treasurer has a ritual for the last week of the fiscal year. It looks a little different from org to org, but the shape is always the same: copy the master spreadsheet into a new file named something like FY26FINALv3ACTUALFINAL.xlsx, carefully type the ending balance of every account into the opening row of a new blank tab, change the year in the header, and pray that nobody needs to add a late transaction to the prior year for the next six weeks.]]></summary>
        <content type="html"><![CDATA[<p>Every booster club treasurer has a ritual for the last week of the fiscal year. It looks a little different from org to org, but the shape is always the same: copy the master spreadsheet into a new file named something like <code>FY26_FINAL_v3_ACTUAL_FINAL.xlsx</code>, carefully type the ending balance of every account into the opening row of a new blank tab, change the year in the header, and pray that nobody needs to add a late transaction to the prior year for the next six weeks.</p>
<p>Then someone asks if the board fund ending balance is correct. You open three versions of the file to compare. Two of them agree. The third is off by $47. Nobody knows which version the board meeting minutes referenced.</p>
<p>This is the ritual we built ledger periods to retire.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="the-problem-is-a-boundary-problem">The problem is a boundary problem<a href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual#the-problem-is-a-boundary-problem" class="hash-link" aria-label="Direct link to The problem is a boundary problem" title="Direct link to The problem is a boundary problem" translate="no">​</a></h2>
<p>Bookkeeping systems that treat your ledger as one infinite stream of entries look simple and work well for a month. They stop working the first time you have to answer "how did we do last fiscal year?" with certainty.</p>
<p>Without a real boundary:</p>
<ul>
<li class=""><strong>Corrections to prior periods silently rewrite your history.</strong> A treasurer adjusts a scholarship approved in the prior year to fix a typo in the memo field. Everyone assumes nothing substantive changed. Six months later, someone pulls a year-end report that now disagrees with what was emailed to the board in August. The numbers moved. Nobody knows when, or why, or by whom.</li>
<li class=""><strong>Reports never match.</strong> "What was our total in the General Fund at fiscal year-end?" is a question with a different answer every time you ask it, because the set of entries that counts keeps growing.</li>
<li class=""><strong>Audit trails are theoretical.</strong> You have an audit log of every change, but you cannot point at a single number and say "this is what we filed with the IRS and it hasn't changed since."</li>
</ul>
<p>The spreadsheet ritual is a coping mechanism for this. Copying the file and freezing a version is how treasurers manually impose a boundary that the tool itself does not enforce. The work is real; the method is fragile.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="what-a-period-actually-is">What a period actually is<a href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual#what-a-period-actually-is" class="hash-link" aria-label="Direct link to What a period actually is" title="Direct link to What a period actually is" translate="no">​</a></h2>
<p>A <strong>ledger period</strong> is a span of time — typically a fiscal year, sometimes a season, occasionally a calendar quarter — during which ledger entries can be written. Exactly one period is active at a time. When a treasurer closes the active period, two things happen automatically:</p>
<ol>
<li class="">Every ledger account's ending balance becomes the opening balance entry of the new period. Family accounts, fund accounts, org accounts — everything carries forward with the same number it ended on. This is called <strong>carry-forward</strong>, and it replaces the manual "type the ending balance into a new tab" step of the spreadsheet ritual.</li>
<li class="">The closed period becomes read-only. No new entries land against it. No corrections. No adjustments. Historical entries stay fully queryable for reporting — but the totals are frozen.</li>
</ol>
<p>Day-to-day bookkeeping resumes immediately in the new period. Settlement payouts, scholarship disbursements, fund transfers all keep working. If you close without creating a replacement, writes to the ledger fail with a clear error until a new period starts — the system refuses to let you write with no period to write to.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="what-this-buys-you">What this buys you<a href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual#what-this-buys-you" class="hash-link" aria-label="Direct link to What this buys you" title="Direct link to What this buys you" translate="no">​</a></h2>
<p><strong>Your year-end numbers stop moving.</strong> Once FY 2025 is closed, the total in the General Fund at the end of that year is permanent. Pull that number six months later and it matches the board minutes. Pull it six years later and it still matches. The books are closed.</p>
<p><strong>Corrections are honest.</strong> You cannot backdate an entry into a closed period. If you discover an error in last year's settlement, the fix is a corrective entry in the current period with a note explaining what you're correcting. The original entry stays intact. This is how accountants have done corrections for centuries, and it is the only way an audit trail actually holds up.</p>
<p><strong>Transitions are clean.</strong> When a treasurer hands off to a successor, the boundary between regimes is obvious. The outgoing treasurer closes the period on their last day. The incoming treasurer sees a fresh, named period. Nobody wonders whether a messy entry belongs to the old regime or the new one.</p>
<p><strong>990 prep gets easier.</strong> Fiscal-year boundary lines up with filing boundaries. The numbers in your IRS filing match the numbers in the period you close — no reconciliation between your books and your return.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="when-to-actually-close">When to actually close<a href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual#when-to-actually-close" class="hash-link" aria-label="Direct link to When to actually close" title="Direct link to When to actually close" translate="no">​</a></h2>
<p>There is no rule about when to close. Some orgs we work with close once a year, aligned with their fiscal year-end. Others close per season — a booster club that runs only football concessions from August through November might close the period in December, then open a new period in August when football starts up again. Some orgs run a single long-lived period forever and only close when a specific event forces it: a treasurer change, a CPA engagement, a merger.</p>
<p>The right cadence is whatever matches the natural rhythm of your org. Closing too often creates busywork. Closing too rarely defeats the purpose. One close per fiscal year is the default for a reason.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="what-we-didnt-build">What we didn't build<a href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual#what-we-didnt-build" class="hash-link" aria-label="Direct link to What we didn't build" title="Direct link to What we didn't build" translate="no">​</a></h2>
<p>We deliberately did not build:</p>
<ul>
<li class=""><strong>An export.</strong> Closing a period does not generate a PDF financial statement or a tax return. It's a boundary, not a deliverable. The reports tool already exists for exports. Closing just freezes the numbers that exports will reference.</li>
<li class=""><strong>A reopen.</strong> Closed periods are closed. If you discover a material error, the fix is a corrective entry in the current period — not a time-travel reversal. This is opinionated and deliberate. An accountant will tell you why.</li>
<li class=""><strong>An auto-close schedule.</strong> The treasurer decides when to close. The system does not decide for them. Closing is a consequential act and it belongs to a human.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="if-youre-a-booster-club-treasurer-reading-this">If you're a booster club treasurer reading this<a href="https://www.standshare.app/blog/closing-the-books-without-a-spreadsheet-ritual#if-youre-a-booster-club-treasurer-reading-this" class="hash-link" aria-label="Direct link to If you're a booster club treasurer reading this" title="Direct link to If you're a booster club treasurer reading this" translate="no">​</a></h2>
<p>Ledger periods is live on StandShare today. If you're running a fiscal year that ends June 30, now is a good time to try closing your first period in a low-stakes way: wait until your last May settlement posts, confirm every family balance looks right, close the period, and hand the successor a clean new one named <code>FY 2026–27</code>. When June 1 hits, you are already in next year — and last year's totals are locked in, for good.</p>
<p>The spreadsheet ritual served a real purpose. It doesn't need to anymore.</p>]]></content>
        <author>
            <name>StandShare Team</name>
            <uri>https://www.standshare.app</uri>
        </author>
        <category label="treasury" term="treasury"/>
        <category label="nonprofits" term="nonprofits"/>
        <category label="operations" term="operations"/>
        <category label="product-updates" term="product-updates"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[What Event Night Actually Looks Like for a Concession Coordinator]]></title>
        <id>https://www.standshare.app/blog/event-night-reconciliation</id>
        <link href="https://www.standshare.app/blog/event-night-reconciliation"/>
        <updated>2026-04-17T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[It is 500. The coordinator for the Westlake Baseball booster club has arrived at the stand carrying a cardboard folder, a tablet, and a personal phone. They are about to spend the next 70 minutes moving between three different screens and two paper documents to do what is, on paper, a single job: know who is going to work tonight's event, make sure they show up, and get the books balanced before the cash drawer goes home.]]></summary>
        <content type="html"><![CDATA[<p>It is 5:50 PM on a Friday. First pitch is at 7:00. The coordinator for the Westlake Baseball booster club has arrived at the stand carrying a cardboard folder, a tablet, and a personal phone. They are about to spend the next 70 minutes moving between three different screens and two paper documents to do what is, on paper, a single job: know who is going to work tonight's event, make sure they show up, and get the books balanced before the cash drawer goes home.</p>
<p>The job hasn't changed in decades. What has changed is the number of places it lives.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="whats-in-the-folder">What's in the folder<a href="https://www.standshare.app/blog/event-night-reconciliation#whats-in-the-folder" class="hash-link" aria-label="Direct link to What's in the folder" title="Direct link to What's in the folder" translate="no">​</a></h2>
<p>The paper part is always the same:</p>
<ul>
<li class="">The signup sheet from the volunteer portal, printed on Tuesday because it was "final" then. Two families have since swapped workers. Nobody updated the print.</li>
<li class="">The stand assignment list from last season, annotated in pen with which spots fill fastest.</li>
<li class="">A handful of late-cancellation texts screenshotted and stapled to the back so the coordinator doesn't forget to mark them as no-shows.</li>
</ul>
<p>The tablet has the volunteer portal open in one browser tab and the settlement tool open in another. The personal phone has the family group chat, which is where most of the late changes actually happen — a mom asking if her college-age son can swap in for his sister, two families coordinating a ride share to a game that moved to a different diamond.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="the-five-screen-ritual">The five-screen ritual<a href="https://www.standshare.app/blog/event-night-reconciliation#the-five-screen-ritual" class="hash-link" aria-label="Direct link to The five-screen ritual" title="Direct link to The five-screen ritual" translate="no">​</a></h2>
<p>Between arrival and first pitch, the coordinator does each of these at least once:</p>
<ol>
<li class=""><strong>Open the roster.</strong> Confirm who is actually showing up. Match paper print to the current online list. Cross out the two workers who got swapped. Add the swap-ins by hand.</li>
<li class=""><strong>Switch tabs to the event detail page.</strong> Check whether all stand positions are covered. Discover that stand 3 is uncovered because the person assigned there cancelled at 3:45 PM and nobody saw the message.</li>
<li class=""><strong>Text the family lead of a standby worker.</strong> Ask if anyone can cover stand 3. Wait.</li>
<li class=""><strong>Open check-in.</strong> Start marking people as they arrive. The list of names is sorted differently here than on the roster screen, and two of the names don't match what's on the paper sheet because families added nicknames.</li>
<li class=""><strong>Switch tabs to the spreadsheet the treasurer sent.</strong> Enter the starting cash count into row 7. Promise yourself you'll remember to come back and enter the ending count later.</li>
<li class=""><strong>Go back to the roster.</strong> Mark the two no-shows. Make a mental note to ask the admin whether the standby who stepped in should be credited as "attended" even though she wasn't originally assigned.</li>
</ol>
<p>The game starts. The coordinator works the line for twenty minutes. The phone rings.</p>
<p>It is a family asking why they were charged a no-show fee last month when their daughter did work the event — she just worked a different stand than what was printed. Nobody updated the system. The coordinator promises to look into it and doesn't quite mean it, because looking into it means opening the settlement from six weeks ago, figuring out which stand the worker actually worked at, and hoping the audit log captured the shift.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="what-changed">What changed<a href="https://www.standshare.app/blog/event-night-reconciliation#what-changed" class="hash-link" aria-label="Direct link to What changed" title="Direct link to What changed" translate="no">​</a></h2>
<p>The old version of StandShare reflected this reality too faithfully. The event list was a grid. Clicking a row expanded an inline panel with workers and stands. Editing an event took you to a separate page. Settlement was its own page. Check-in was its own page. Roster editing was its own modal. Each of them worked. None of them were the same place.</p>
<p>A coordinator running an event touched five different screens to do the one job.</p>
<p>We rebuilt the event workflow around a single question: if a coordinator clicks a concession event, what should they see?</p>
<p>The answer is now the <strong>Event Detail page</strong>. Click an event from the Events Hub — which is itself just two tabs, List and Calendar — and you land somewhere that holds everything that concerns that event:</p>
<ul>
<li class=""><strong>The roster sits in a drawer that opens from the page.</strong> Assignment, re-assignment, stand swaps, attendance edits, check-in, and "mark all attended" are one panel. You open it, make changes, close it. You stay on the event.</li>
<li class=""><strong>Settlement is a drawer, not a separate page.</strong> Click Settle from the Event Detail, enter stand revenue, commit. If the event is already settled, the drawer opens read-only so you can review without risk. When you close the drawer, you are still on the event.</li>
<li class=""><strong>The stand layout is on the page.</strong> You see it, assign workers to it, and later (when revenue gets entered) see per-stand commission against it. Stand CRUD moved into a Stands tab inside the Edit Event modal — no more hunting through the signup sheet for add/edit controls.</li>
<li class=""><strong>Messages are on the page.</strong> A per-event message board replaces "find the right group chat" — coordinator, family leads, and cross-org partner workers all see the same thread. The gate-meetup clarification, the "who's bringing ice?" question, the stand swap — all in one place scoped to the event.</li>
</ul>
<p>The coordinator still has the cardboard folder. That is a real choice, and some things really do belong on paper. But the number of screens between the folder and the truth has dropped from five to one.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="the-small-stuff-that-adds-up">The small stuff that adds up<a href="https://www.standshare.app/blog/event-night-reconciliation#the-small-stuff-that-adds-up" class="hash-link" aria-label="Direct link to The small stuff that adds up" title="Direct link to The small stuff that adds up" translate="no">​</a></h2>
<p>A few smaller changes compound into the feel of the new flow:</p>
<ul>
<li class=""><strong>The list itself is useful.</strong> A coverage bar on each card shows the fraction of slots filled — red under 50%, amber to 80, green above. A coordinator scanning tomorrow night's events sees the understaffed ones immediately.</li>
<li class=""><strong>Temporal grouping.</strong> The list groups into Today, This Week, Later This Month. You stop scrolling past next July to see tomorrow.</li>
<li class=""><strong>State-aware cards.</strong> A settled event looks different from an upcoming one. A full event shows "Full" instead of making you math out capacity. A family card adds a "Worked" pill to events you attended so you can tell at a glance which past events count as yours.</li>
<li class=""><strong>Slots, not stands, for capacity.</strong> A single physical concession stand can have four workers. Counting "stands staffed" was never capacity; counting <strong>slots</strong> is. The coverage bar now says <code>12 / 20 workers</code> and means it.</li>
</ul>
<p>None of this is glamorous. It is the slow, boring work of noticing that a coordinator is switching tabs five times to do one job, and then not making them do that anymore.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="what-we-didnt-touch">What we didn't touch<a href="https://www.standshare.app/blog/event-night-reconciliation#what-we-didnt-touch" class="hash-link" aria-label="Direct link to What we didn't touch" title="Direct link to What we didn't touch" translate="no">​</a></h2>
<p>We deliberately kept:</p>
<ul>
<li class=""><strong>Paper as a first-class fallback.</strong> Concession stands are real places with unreliable Wi-Fi. Check-in works offline. Roster exports to CSV. Nothing in the new flow assumes a live connection to be useful.</li>
<li class=""><strong>The ability to run an event from a phone.</strong> Mobile card layouts got the same love as desktop. The drawers stack vertically on a 375px screen. Coordinators do not need to bring a laptop to the stand.</li>
<li class=""><strong>The audit trail.</strong> Every assignment edit, attendance change, and settlement commit is still logged with who did it and when. The "who worked stand 3 six weeks ago" question has a real answer now, not a shrug.</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="if-you-run-concession-events">If you run concession events<a href="https://www.standshare.app/blog/event-night-reconciliation#if-you-run-concession-events" class="hash-link" aria-label="Direct link to If you run concession events" title="Direct link to If you run concession events" translate="no">​</a></h2>
<p>Open the Events Hub the next time you have an event coming up. Click into the event. Notice the drawers. You will not need all of them in a single session, but when you do need one — a late swap, an uncovered stand, a last-minute "who is bringing the float?" — they are all right there on the same page you started on.</p>
<p>The cardboard folder can stay. It is a good folder.</p>]]></content>
        <author>
            <name>StandShare Team</name>
            <uri>https://www.standshare.app</uri>
        </author>
        <category label="concession-management" term="concession-management"/>
        <category label="operations" term="operations"/>
        <category label="product-updates" term="product-updates"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How a Youth Sports Organization Replaced 70 Spreadsheets]]></title>
        <id>https://www.standshare.app/blog/replacing-spreadsheets-with-standshare</id>
        <link href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare"/>
        <updated>2026-03-22T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Central Valley Youth Athletic Association is a mid-sized booster club supporting four varsity sports programs at a public high school. They have 94 family accounts, run 24 concession events per year, manage a scholarship fund, and have annual 990 filing obligations as a registered 501(c)(3).]]></summary>
        <content type="html"><![CDATA[<p>Central Valley Youth Athletic Association is a mid-sized booster club supporting four varsity sports programs at a public high school. They have 94 family accounts, run 24 concession events per year, manage a scholarship fund, and have annual 990 filing obligations as a registered 501(c)(3).</p>
<p>They were managing all of it with spreadsheets.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="before-the-spreadsheet-stack">Before: The Spreadsheet Stack<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#before-the-spreadsheet-stack" class="hash-link" aria-label="Direct link to Before: The Spreadsheet Stack" title="Direct link to Before: The Spreadsheet Stack" translate="no">​</a></h2>
<p>At the start of each season, the outgoing treasurer handed over a folder. Inside:</p>
<ul>
<li class=""><strong>71 Google Sheets tabs</strong> spread across 6 files, covering family accounts, event schedules, volunteer rosters, settlement history, scholarship applications, and compliance tracking</li>
<li class=""><strong>3 Google Forms</strong> for event sign-ups, scholarship applications, and concession volunteer preferences</li>
<li class=""><strong>A Gmail label</strong> containing 400+ family communications from the prior season</li>
<li class=""><strong>A physical filing cabinet</strong> with signed liability waivers and concession certifications for active families</li>
<li class=""><strong>One page of handwritten notes</strong> explaining which file contained the "real" version of the family ledger</li>
</ul>
<p>The new treasurer, Maria, was a former accountant. She could read a spreadsheet. What she couldn't do was understand why the same family appeared in three different tabs with three different balances, or why some settlement rows had a dollar figure and others had a formula that referenced a cell in a different file that no longer existed.</p>
<p>It took her six weeks to feel confident that the numbers she was working with were correct.</p>
<h3 class="anchor anchorTargetStickyNavbar_P8ZN" id="event-night-what-reconciliation-actually-looked-like">Event Night: What Reconciliation Actually Looked Like<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#event-night-what-reconciliation-actually-looked-like" class="hash-link" aria-label="Direct link to Event Night: What Reconciliation Actually Looked Like" title="Direct link to Event Night: What Reconciliation Actually Looked Like" translate="no">​</a></h3>
<p>After each concession event, the coordinator ran a reconciliation process that took an average of 3.5 hours:</p>
<ol>
<li class="">Cross-reference the paper sign-in sheet against the digital volunteer roster</li>
<li class="">Calculate individual family credits based on shift length and role (cashier vs. prep vs. cleanup carried different credit weights, documented in a comment cell)</li>
<li class="">Update 94 rows in the family ledger</li>
<li class="">Email no-show families individually</li>
<li class="">Log the event summary in the compliance tab</li>
<li class="">Reconcile cash drawer totals against projected revenue</li>
<li class="">Copy summary figures into the school district's required monthly report</li>
</ol>
<p>Three coordinators burned out during this process in a four-year span. The fourth, James, stayed — but he described the role as "a second job I don't get paid for."</p>
<h3 class="anchor anchorTargetStickyNavbar_P8ZN" id="what-fell-through-the-cracks">What Fell Through the Cracks<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#what-fell-through-the-cracks" class="hash-link" aria-label="Direct link to What Fell Through the Cracks" title="Direct link to What Fell Through the Cracks" translate="no">​</a></h3>
<ul>
<li class=""><strong>6 compliance gaps per season on average:</strong> families who submitted forms but whose compliance status never got updated in the spreadsheet</li>
<li class=""><strong>11% of no-show credits</strong> were miscalculated due to formula errors introduced when new rows were inserted mid-season</li>
<li class=""><strong>4-6 family disputes per season</strong> that required email thread archaeology to resolve</li>
<li class=""><strong>Annual 990 prep</strong> required 12-14 hours of manual data reconciliation that the organization's accountant billed for separately</li>
</ul>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="after-one-dashboard">After: One Dashboard<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#after-one-dashboard" class="hash-link" aria-label="Direct link to After: One Dashboard" title="Direct link to After: One Dashboard" translate="no">​</a></h2>
<p>The organization moved to StandShare at the start of the following season. The migration itself took two sessions: one to import family account data and opening balances, one to train the coordinator and treasurer on the interface.</p>
<h3 class="anchor anchorTargetStickyNavbar_P8ZN" id="event-night-now">Event Night Now<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#event-night-now" class="hash-link" aria-label="Direct link to Event Night Now" title="Direct link to Event Night Now" translate="no">​</a></h3>
<p>The coordinator uses the StandShare mobile-friendly interface to check in families as they arrive. At the end of the event, she marks it closed. Credits are calculated and posted automatically based on the credit schedule the treasurer configured at the start of the season.</p>
<p>Total coordinator time per event: 25 minutes, covering check-in, drawer count entry, and event close. No spreadsheet, no formula review, no email queue.</p>
<h3 class="anchor anchorTargetStickyNavbar_P8ZN" id="families-check-their-own-balances">Families Check Their Own Balances<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#families-check-their-own-balances" class="hash-link" aria-label="Direct link to Families Check Their Own Balances" title="Direct link to Families Check Their Own Balances" translate="no">​</a></h3>
<p>The most immediate feedback from the first season: families stopped emailing the treasurer to ask about their balances. They logged into the family portal, saw their current balance and full transaction history, and that was enough.</p>
<p>Maria estimated this saved her 45 minutes per week during the active season — time she had previously spent fielding balance inquiries and cross-checking the ledger before replying.</p>
<h3 class="anchor anchorTargetStickyNavbar_P8ZN" id="disputes-resolved-in-under-5-minutes">Disputes Resolved in Under 5 Minutes<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#disputes-resolved-in-under-5-minutes" class="hash-link" aria-label="Direct link to Disputes Resolved in Under 5 Minutes" title="Direct link to Disputes Resolved in Under 5 Minutes" translate="no">​</a></h3>
<p>When a family disputed a no-show charge in October, James pulled up the transaction in StandShare. It showed the check-in record (no entry), the system-generated no-show credit deduction, the timestamp, and his username as the coordinator who closed the event. He forwarded the screen to the family. The dispute was resolved in one reply.</p>
<h3 class="anchor anchorTargetStickyNavbar_P8ZN" id="compliance-went-from-a-spreadsheet-column-to-a-dashboard-widget">Compliance Went from a Spreadsheet Column to a Dashboard Widget<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#compliance-went-from-a-spreadsheet-column-to-a-dashboard-widget" class="hash-link" aria-label="Direct link to Compliance Went from a Spreadsheet Column to a Dashboard Widget" title="Direct link to Compliance Went from a Spreadsheet Column to a Dashboard Widget" translate="no">​</a></h3>
<p>Families submit required forms through a link in StandShare. When a form is received and processed, the family's compliance status updates automatically. At any point, the treasurer can see exactly which families are compliant, which have pending items, and which are blocked from scholarship consideration.</p>
<p>The school district compliance report that previously required a manual export and 90 minutes of formatting now takes three clicks.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="results-after-one-full-season">Results After One Full Season<a href="https://www.standshare.app/blog/replacing-spreadsheets-with-standshare#results-after-one-full-season" class="hash-link" aria-label="Direct link to Results After One Full Season" title="Direct link to Results After One Full Season" translate="no">​</a></h2>
<table><thead><tr><th>Metric</th><th>Before</th><th>After</th></tr></thead><tbody><tr><td>Coordinator time per event</td><td>3.5 hours</td><td>25 minutes</td></tr><tr><td>Balance inquiry emails per week (active season)</td><td>~18</td><td>~2</td></tr><tr><td>Compliance gaps identified at season-end</td><td>6</td><td>0</td></tr><tr><td>Annual 990 prep hours</td><td>12-14</td><td>3</td></tr><tr><td>Family disputes escalated beyond first contact</td><td>4-6</td><td>0</td></tr></tbody></table>
<p>The scholarship fund, which previously required a manual audit of the family ledger before each award cycle, now draws directly from verified account data and compliance status. The committee reviews applications, not spreadsheets.</p>
<p>James is still coordinating. He described the change simply: "I can do this without it taking over my weekends."</p>
<hr>
<p>If your organization is running a similar stack — multiple spreadsheet files, manual reconciliation, family balance inquiries filling your inbox — <a href="https://www.standshare.app/" target="_blank" rel="noopener noreferrer" class="">StandShare</a> was built for exactly this situation. The migration is straightforward and the first season tends to pay for itself in recovered volunteer hours.</p>]]></content>
        <author>
            <name>StandShare Team</name>
            <uri>https://www.standshare.app</uri>
        </author>
        <category label="concession-management" term="concession-management"/>
        <category label="nonprofits" term="nonprofits"/>
        <category label="case-study" term="case-study"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[What Every Booster Club Treasurer Wishes They Had]]></title>
        <id>https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had</id>
        <link href="https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had"/>
        <updated>2026-03-21T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The booster club treasurer is usually the most organized person in the room. They volunteered for the role knowing it would be work. What they didn't anticipate was how much of that work would be spent compensating for systems that weren't built for this job.]]></summary>
        <content type="html"><![CDATA[<p>The booster club treasurer is usually the most organized person in the room. They volunteered for the role knowing it would be work. What they didn't anticipate was how much of that work would be spent compensating for systems that weren't built for this job.</p>
<p>Here are the five things every treasurer privately wishes they had — and what those things actually look like in practice.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="1-automated-settlement-math">1. Automated Settlement Math<a href="https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had#1-automated-settlement-math" class="hash-link" aria-label="Direct link to 1. Automated Settlement Math" title="Direct link to 1. Automated Settlement Math" translate="no">​</a></h2>
<p>Imagine if, at the end of every concession event, the credits were calculated automatically.</p>
<p>No more manually looking up each family's shift length, cross-referencing it against the credit schedule, and entering the result one row at a time. No more wondering whether you remembered to apply the partial-credit rule for the family who left 30 minutes early. No more re-checking your math the next morning because you weren't sure you saved the right version of the file.</p>
<p>Automated settlement means the coordinator checks in families as they arrive, marks the event closed when it ends, and the credits post. The treasurer reviews a summary instead of building one.</p>
<p>For an organization running 20+ events per season, this is the difference between a manageable volunteer role and a part-time job nobody signed up for.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="2-a-family-self-service-balance-portal">2. A Family Self-Service Balance Portal<a href="https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had#2-a-family-self-service-balance-portal" class="hash-link" aria-label="Direct link to 2. A Family Self-Service Balance Portal" title="Direct link to 2. A Family Self-Service Balance Portal" translate="no">​</a></h2>
<p>Imagine if families could check their own balance without emailing you.</p>
<p>"What's our current account balance?" is the most common question a treasurer receives. It is also the most time-consuming to answer accurately, because the answer requires opening the spreadsheet, finding the right row, making sure you're looking at the current version, and composing a reply.</p>
<p>Multiply that by 80 families, some of whom ask multiple times per season, and you have a material chunk of the treasurer's volunteer hours going toward balance lookups.</p>
<p>A self-service portal means families log in and see their balance, their transaction history, and their compliance status. They don't need to wait for a reply. You don't need to send one.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="3-document-management-that-actually-works">3. Document Management That Actually Works<a href="https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had#3-document-management-that-actually-works" class="hash-link" aria-label="Direct link to 3. Document Management That Actually Works" title="Direct link to 3. Document Management That Actually Works" translate="no">​</a></h2>
<p>Imagine if you could see, in one place, which families had submitted their required forms and which hadn't.</p>
<p>Signed liability waivers. Concession certifications. Fundraising participation agreements. These documents matter — some organizations require them before a family's account can be used for scholarship applications, and some school districts require them for audit purposes.</p>
<p>In a spreadsheet system, compliance tracking is a column that somebody has to update manually every time a form comes in. Forms arrive by email. The column gets missed. When scholarship season comes and a family's eligibility is in question, there's no clean record to refer to.</p>
<p>Integrated document management means forms are submitted digitally, compliance status updates automatically, and the treasurer can pull a compliance report in seconds rather than hours.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="4-an-audit-trail-for-every-dollar">4. An Audit Trail for Every Dollar<a href="https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had#4-an-audit-trail-for-every-dollar" class="hash-link" aria-label="Direct link to 4. An Audit Trail for Every Dollar" title="Direct link to 4. An Audit Trail for Every Dollar" translate="no">​</a></h2>
<p>Imagine if every transaction had a timestamp, a user, and a reason — and you could look it up in 10 seconds.</p>
<p>Family disputes about account balances are not pleasant. They are, however, inevitable. Someone believes they showed up for an event and didn't get credit. Someone thinks their balance is higher than what the treasurer has on record. Someone's scholarship application is on hold because their account shows a compliance issue they don't recognize.</p>
<p>Without an audit trail, resolving these disputes requires reconstructing a history from email threads and spreadsheet version histories. With an audit trail, you look up the transaction, show the timestamp and the user who entered it, and the conversation is brief.</p>
<p>An audit trail is also the right answer when the school district asks how the funds were managed.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="5-financial-reports-that-dont-take-half-a-day-to-produce">5. Financial Reports That Don't Take Half a Day to Produce<a href="https://www.standshare.app/blog/what-booster-club-treasurers-wish-they-had#5-financial-reports-that-dont-take-half-a-day-to-produce" class="hash-link" aria-label="Direct link to 5. Financial Reports That Don't Take Half a Day to Produce" title="Direct link to 5. Financial Reports That Don't Take Half a Day to Produce" translate="no">​</a></h2>
<p>Imagine if generating a seasonal financial report took four clicks instead of four hours.</p>
<p>End-of-season reporting is one of the tasks that pushes treasurers not to return for a second year. It requires pulling data from multiple tabs, verifying totals, formatting for the school district's preferred template, and double-checking everything against the original receipts.</p>
<p>For nonprofits with 990 filing requirements, the stakes are higher. The numbers need to be right, and they need to be traceable.</p>
<p>One-click reports mean the treasurer exports a formatted summary whenever it's needed — for the school district, for the board, for the 990 preparer. The data is already clean because it was captured correctly the first time.</p>
<hr>
<p>StandShare was built around these five things. Automated settlement math, a family self-service portal, integrated document management, a full audit trail, and financial reporting that takes minutes. If any of these sound familiar, it might be worth a look at <a href="https://www.standshare.app/" target="_blank" rel="noopener noreferrer" class="">what StandShare does</a>.</p>]]></content>
        <author>
            <name>StandShare Team</name>
            <uri>https://www.standshare.app</uri>
        </author>
        <category label="concession-management" term="concession-management"/>
        <category label="nonprofits" term="nonprofits"/>
        <category label="treasurer" term="treasurer"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[The Hidden Cost of Managing Concession Stands with Spreadsheets]]></title>
        <id>https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands</id>
        <link href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands"/>
        <updated>2026-03-20T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Every fall, booster club coordinators across the country open the same spreadsheet they've been using for three years. It has 70-something tabs. The filename ends in FINALv3_USE-THIS-ONE.xlsx. And somewhere between columns AQ and BW, last year's settlement math stopped adding up.]]></summary>
        <content type="html"><![CDATA[<p>Every fall, booster club coordinators across the country open the same spreadsheet they've been using for three years. It has 70-something tabs. The filename ends in <code>_FINAL_v3_USE-THIS-ONE.xlsx</code>. And somewhere between columns AQ and BW, last year's settlement math stopped adding up.</p>
<p>This is not a technology problem. It's a coordination problem that technology made worse.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="how-spreadsheets-became-the-default">How Spreadsheets Became the Default<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#how-spreadsheets-became-the-default" class="hash-link" aria-label="Direct link to How Spreadsheets Became the Default" title="Direct link to How Spreadsheets Became the Default" translate="no">​</a></h2>
<p>When a booster club is small — a dozen families, five events per season — a shared Google Sheet works fine. Someone sets up the initial tracker in an afternoon. Families email in their hours. The treasurer does the math. Done.</p>
<p>Then the organization grows. Now there are 80 families, 22 home games, multiple concession windows, and a scholarship fund that needs its own accounting. The spreadsheet grows with it, one tab at a time, until nobody is quite sure what's canonical anymore.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="the-coordinator-tax-4-hours-per-event">The Coordinator Tax: 4 Hours Per Event<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#the-coordinator-tax-4-hours-per-event" class="hash-link" aria-label="Direct link to The Coordinator Tax: 4 Hours Per Event" title="Direct link to The Coordinator Tax: 4 Hours Per Event" translate="no">​</a></h2>
<p>Here's what a realistic event reconciliation looks like for a mid-sized organization:</p>
<p>A coordinator arrives at 7 AM for a 10 AM game. After the event, she needs to:</p>
<ol>
<li class="">Pull the family sign-in sheet and cross-reference it against the volunteer roster in Tab 14</li>
<li class="">Manually calculate each family's credit based on their assigned shift (2 hours gets a full credit; 1.5 hours gets a partial — this rule lives in a comment cell that only the previous treasurer knew about)</li>
<li class="">Update the family account ledger in Tab 6, being careful not to overwrite the conditional formatting that flags negative balances</li>
<li class="">Email 8 families who didn't show up and log the no-shows in Tab 22</li>
<li class="">Reconcile the cash drawer total against Tab 3's expected revenue</li>
<li class="">Copy the totals into the shared summary sheet that the school district requires for compliance</li>
</ol>
<p>Total time: roughly 4 hours, performed by someone who volunteered to run a concession stand, not to be an accountant.</p>
<p>Multiply that by 22 events and you have 88 hours of coordinator time per season spent on spreadsheet maintenance alone.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="the-audit-trail-problem">The Audit Trail Problem<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#the-audit-trail-problem" class="hash-link" aria-label="Direct link to The Audit Trail Problem" title="Direct link to The Audit Trail Problem" translate="no">​</a></h2>
<p>When a family disputes their balance — and they will — the spreadsheet becomes a liability.</p>
<p>"You charged us for a no-show on October 14th, but my daughter was there."</p>
<p>Now the coordinator is digging through Tab 22, checking timestamps on email threads, and trying to remember who entered what. There is no timestamp. There is no record of who changed cell D47. There is only a number and a memory.</p>
<p>Financial disputes without audit trails are uncomfortable. When they involve scholarship decisions — where a family's compliance record affects their eligibility for several hundred dollars in tuition relief — they become genuinely serious.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="data-scattered-across-systems">Data Scattered Across Systems<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#data-scattered-across-systems" class="hash-link" aria-label="Direct link to Data Scattered Across Systems" title="Direct link to Data Scattered Across Systems" translate="no">​</a></h2>
<p>A typical booster club's operational data lives in:</p>
<ul>
<li class="">Google Sheets (family accounts, event schedules, volunteer hours)</li>
<li class="">Google Forms (event sign-ups, scholarship applications, volunteer preferences)</li>
<li class="">Gmail threads (family disputes, coordinator communications)</li>
<li class="">A physical filing cabinet (signed forms, compliance acknowledgments)</li>
<li class="">Someone's personal email (the original template from three years ago)</li>
</ul>
<p>None of these systems talk to each other. When a family asks "what's our current balance?", the answer requires pulling data from at least three sources and doing arithmetic that may or may not be current.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="compliance-gaps">Compliance Gaps<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#compliance-gaps" class="hash-link" aria-label="Direct link to Compliance Gaps" title="Direct link to Compliance Gaps" translate="no">​</a></h2>
<p>School districts and state athletic associations have paperwork requirements. Families need to submit signed liability waivers, concession certifications, or fundraising acknowledgments before their accounts are considered compliant.</p>
<p>In a spreadsheet system, compliance tracking looks like a column marked "Y/N" in Tab 18. The N entries get highlighted in red. Every year, some families slip through because someone forgot to check the column, the filter was accidentally cleared, or the form was submitted but the Y was never entered.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="the-handoff-problem">The Handoff Problem<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#the-handoff-problem" class="hash-link" aria-label="Direct link to The Handoff Problem" title="Direct link to The Handoff Problem" translate="no">​</a></h2>
<p>Booster clubs have high turnover by design. Families cycle in as their kids join programs and cycle out when they graduate. Every few years, the treasurer or coordinator role changes hands.</p>
<p>When that handoff happens, the incoming coordinator gets a file. Maybe a folder of files. And a 30-minute meeting where the outgoing coordinator explains what all the tabs mean.</p>
<p>The institutional knowledge that makes the spreadsheet work — the comment cells, the unwritten rules, the lookup formulas that reference cells three sheets away — doesn't transfer. It just gradually stops working until someone rebuilds it.</p>
<h2 class="anchor anchorTargetStickyNavbar_P8ZN" id="there-is-a-better-way">There Is a Better Way<a href="https://www.standshare.app/blog/hidden-cost-spreadsheets-concession-stands#there-is-a-better-way" class="hash-link" aria-label="Direct link to There Is a Better Way" title="Direct link to There Is a Better Way" translate="no">​</a></h2>
<p>Organizations managing fundraising accounts, concession credits, and compliance documentation are increasingly moving away from general-purpose spreadsheet tools toward purpose-built software that handles scheduling, settlements, and compliance in one place.</p>
<p>The shift is less about features and more about reliability. When the reconciliation math happens automatically, when families can check their own balances, when every transaction has a timestamp and an author, the 4-hour-per-event coordinator tax drops to something closer to 20 minutes.</p>
<p>The spreadsheet was always a workaround. The question is how long the workaround is worth maintaining.</p>]]></content>
        <author>
            <name>StandShare Team</name>
            <uri>https://www.standshare.app</uri>
        </author>
        <category label="concession-management" term="concession-management"/>
        <category label="nonprofits" term="nonprofits"/>
        <category label="operations" term="operations"/>
    </entry>
</feed>