Skip to main content
  1. Posts/

Bailing Out of a Timeshare Because a Date Told Me To (And Locking Down Your Financial estate)

·4 mins

I almost bought a $25,000 timeshare.

I was sitting across from a girl on our first date, bragging about this amazing “vacation investment” I was about to pull the trigger on. She looked at me like I was an absolute moron. She worked in estate planning. She gently explained that timeshares aren’t assets—they are infinitely depreciating liabilities with perpetually escalating maintenance fees.

I canceled the contract the next morning during the rescission window. Best financial decision of my life. I married the girl, too.

Someone posted a very similar story on r/personalfinance last week. The top comment nailed the actual issue: “If you need a random date to tell you a timeshare is a scam, you need a rigid system to track your net worth.”

Tracking your net worth shouldn’t mean uploading your bank passwords to a sketchy ad-supported web app. A lot of people love Mint (RIP) or YNAB, but I refuse to put my financial estate behind someone else’s frontend. You can self-host this just like you self-host your Docker containers. Open-source net worth trackers exist, and they are bulletproof.

Kiss The Excel Sheet Goodbye #

For years I used a massive Google Sheet that required manual data entry. Every Sunday I’d log into 5 different banks, copy paste the numbers, and pray my VLOOKUPs didn’t break.

I finally migrated to Actual Budget. It is a local-first, self-hosted sync server built on SQLite. It handles envelope budgeting and automated net worth tracking without phoning home to Mark Zuckerberg.

The alternative is Firefly III, which is great if you want a massive Postgres database and heavily granular double-entry accounting. I haven’t tested Firefly on ARM yet, but Actual runs flawlessly on a 2GB RAM Alpine Linux VM. It uses roughly 150MB of RAM idle. It’s overkill for most people, but if you’re already running Hetzner cloud instances for $4.50 a month, you might as well host your ledger there instead of paying DigitalOcean’s wildly inflated prices.

The 3-Minute Docker Spin Up #

If you’re dating a financial advisor and want to impress her on date two, deploy your own tracker.

Assuming you already have Docker installed, skip Podman for this one. Actual’s sync server relies heavily on standard Docker networking that Podman sometimes complains about unless you tweak the subnet config. Just use Docker.

Here is the exact docker-compose.yml I use on my home server:

version: '3'
services:
  actual-server:
    image: actualbudget/actual-server:latest
    container_name: actual-server
    ports:
      - "5006:5006"
    volumes:
      - ./actual-data:/data
    restart: unless-stopped

Run docker-compose up -d and give it about 15 seconds to initialize the internal SQLite database.

Navigate to http://localhost:5006 and create your admin account. The initial setup takes maybe two minutes.

Getting Data In (Without Syncing Fees) #

Actual supports SimpleFin integration. SimpleFin costs $1.99/month and acts as secure middleware that fetches your transaction data from basically every US bank, then exposes it via an API. You do not want to be parsing bank CSV exports manually on a Friday night.

If $2 a month hurts your soul, the community is genuinely split on the open-source alternatives. Plaid is corporate API poison with terrible rate limits. FinTS works great if you are in Germany, but is basically dead in the water for US credit unions. I haven’t tested the newly released GoBanking library yet, but from reading the PRs, it still struggles with 2FA handshakes on Chase. Stick to SimpleFin. Your time is worth more than parsing a badly formatted Bank of America CSV.

I sync everything exactly once a day at 3:00 AM using a basic cron job inside the container.

What My Date Really Taught Me #

The timeshare pitch was a classic behavioral finance trap. They isolate you, ply you with cheap champagne, and force you to make a massive financial decision under extreme social pressure. You need cold, hard data to counter that.

Seeing your actual net worth drop by $25,000 in a self-hosted dashboard has a sobering effect. It grounds you. Now, before I make any purchase over $500, I look at the Actual Budget API. If the money isn’t in the envelope, I don’t buy it.

Keep your infrastructure local. Keep your data yours. And listen to your dates when they tell you a timeshare is a scam.