unsubbed.co

Gramps

Gramps is a self-hosted genealogy & family replacement for Ancestry and FamilySearch.

Self-hosted genealogy software, honestly reviewed. No marketing fluff, just what you get when you stop paying Ancestry to own your family data.

TL;DR

  • What it is: A mature, open-source (GPL-2.0) genealogy application for building, researching, and publishing family trees — desktop-first, fully offline, no subscription [1].
  • Who it’s for: Family history enthusiasts, amateur genealogists, and researchers who want to own their data instead of renting access to it from Ancestry or MyHeritage.
  • Cost savings: Ancestry’s paid plans run $25–45/mo ($300–540/yr). Gramps is $0 — software license and hosting both free [2].
  • Key strength: 20+ years of active development, deep GEDCOM support, and a report engine that produces actual books, charts, and narrative histories — not just PDF exports of a tree view [1].
  • Key weakness: It’s a GTK desktop application at its core. The UI hasn’t kept pace with 2024 expectations, installation requires Python dependencies, and the web interface (Gramps Web) is a separate project you set up yourself [1][3].

What is Gramps

Gramps — Genealogical Research and Analysis Management Programming System — is a desktop genealogy program that has been in active development since 2001. It’s written in Python, runs on Linux, Windows, and macOS via the GTK widget toolkit, and stores everything in its own database format (GRDB, built on Berkeley DB or SQLite in newer versions) with full GEDCOM import/export for interoperability [1].

The project’s stated goal, from its own README, is to be “intuitive for hobbyists and feature-complete for professional genealogists” [1]. That’s a hard brief to satisfy and Gramps partially delivers on both ends — the data model is genuinely powerful, but the UI asks more from the user than a hobbyist web app like FamilySearch would.

What separates Gramps from the Ancestry/MyHeritage ecosystem is straightforward: you own the data. Your family tree lives in a file on your machine (or server). No subscription, no vendor lock-in, no company deciding to monetize your great-grandmother’s immigration record. The GPL-2.0 license means the source code is permanently open — the project cannot be bought and closed [1].

As of this review, the GitHub repository has 2,852 stars and the project ships with active CI on a maintenance/gramps60 branch, indicating current Gramps 6.x development [1].


Why people choose it

The Ancestry/MyHeritage duopoly has the same problem that every subscription SaaS eventually develops: your data is theirs. You pay $25–45/mo for Ancestry, build a tree over five years, cancel, and you export a GEDCOM that drops half your media and citations. The hints, record matches, and DNA integrations evaporate. You were renting, not owning.

Gramps exists for people who hit that realization. It’s also chosen for a few other specific reasons:

GEDCOM as a first-class format. GEDCOM (the genealogical data exchange standard) is how family trees move between tools. Gramps treats it as a proper import/export target, not an afterthought. If you’ve been building in Ancestry and want out, Gramps is one of the few tools that won’t quietly discard citations, event notes, or media references during import [1][3].

Report depth. Gramps generates reports that are genuinely publication-quality: ancestor charts, descendant charts, narrative family histories, kinship reports, hourglass charts, and a “Narrative Web” export that produces a static genealogy website from your database [1][3]. The web export alone is worth noting — it means you can publish your research without paying for hosting genealogy content on someone else’s platform.

Geography view. With the optional osmgpsmap package installed, Gramps maps the places in your tree on an interactive map. For researchers who care about migration patterns or historical geography, this is a feature no subscription service offers in the same integrated way [1].

Privacy. Your tree never touches a cloud server unless you choose Gramps Web. There’s no “hints” algorithm sending your family data to a matching engine, no DNA company cross-referencing your relatives. For families with adoption records, immigration history, or medical sensitivities in the genealogy, this matters.


Features

Based on the README and project documentation:

Core data model:

  • People, families, events, places, sources, citations, repositories, media, and notes — all as first-class objects, not just fields [1]
  • Every fact can be sourced and cited with proper bibliographic records [3]
  • Multiple relationship types (biological, adopted, foster, etc.) [3]
  • Event-based structure: births, marriages, deaths, immigration, military service, etc. as dateable events with citations [3]

Visualization and reports:

  • Ancestor chart, descendant chart, hourglass chart, fan chart [1][3]
  • Narrative reports (Book report, Individual summary, Family group sheet) [3]
  • Narrative Web Site generator — a static HTML genealogy website from your database [1][3]
  • Graphviz-powered graph reports: three report types require Graphviz installed [1]
  • Geography view with OpenStreetMap (requires osmgpsmap) [1]

Data handling:

  • GEDCOM import and export [3]
  • Full-text search across the database [3]
  • Family tree archiving with GNU RCS for version history [1]
  • Media management with image processing (Pillow for cropping, imagesize for performance) [1]
  • Spell checking in notes (optional gspell) [1]

Extensibility:

  • Plugin system for custom reports, gramplets (dashboard widgets), and data processing [3]
  • Active addon ecosystem maintained by the community at gramps-project.org [3]
  • Translation support via Weblate; as of this review, translations active across dozens of languages [1]

Gramps Web (separate project):

  • A web-based interface for Gramps databases, self-hosted via Docker
  • REST API for the Gramps database
  • Allows collaborative access to a shared family tree over the network [3]
  • Not bundled — requires separate deployment

Pricing: SaaS vs self-hosted math

Gramps doesn’t have a SaaS tier. The software is free. The comparison worth making is against the subscription genealogy services it replaces:

Ancestry.com:

  • U.S. Discovery (US records only): $25.99/mo
  • World Explorer (global records): $45.99/mo
  • All Access (includes Newspapers.com): $54.99/mo
  • Annual plans reduce this ~20%, but you’re still at $260–$530/yr for access you lose the moment you cancel

MyHeritage:

  • Premium: $12.50/mo billed annually ($150/yr)
  • PremiumPlus: $15.00/mo billed annually ($180/yr)
  • Data Plus: ~$25.00/mo for DNA + full records access

MacFamilyTree (desktop, paid):

  • One-time purchase ~$39.99 (Mac only)

Family Tree Maker:

  • ~$50–80 one-time purchase, with annual “sync” subscription for Ancestry integration

Gramps:

  • $0 for the software [1]
  • $0 for a desktop install
  • Gramps Web: $5–10/mo if you want a self-hosted web interface on a VPS [3]
  • Total annual cost: $0–$120 depending on whether you want the web tier

Concrete savings: a family historian paying for Ancestry World Explorer since 2020 has spent ~$2,200. The records they accessed are still on Ancestry’s servers. Their family tree, if exported, comes out as a GEDCOM that may or may not survive a clean import elsewhere. Gramps users own a database file that works the same in 2030 as it does today.

The caveat: Gramps doesn’t include records databases (census records, immigration records, BMD certificates). You still need a subscription service or free sources like FamilySearch for record lookup. Gramps is the management layer, not the discovery layer.


Deployment reality check

Desktop install (primary use case):

Linux: Gramps is packaged in most major distributions (apt install gramps on Ubuntu/Debian, available via Flatpak). Dependency resolution is handled by the package manager. Realistically 5–10 minutes to a working install [1][3].

Windows/macOS: The project provides installers that bundle the Python runtime and GTK dependencies. This is historically the messiest path — GTK on Windows has never been as clean as a native Win32 app, and macOS users frequently hit library path issues. Expect 30–60 minutes on Windows if dependencies don’t resolve cleanly [3].

What you need for desktop:

  • Python 3.9+ [1]
  • GTK 3.24+ [1]
  • pygobject 3.12+ [1]
  • cairo, pango, pangocairo, librsvg2 [1]
  • For full functionality: osmgpsmap (geography), Graphviz (graph reports), PyICU (proper sorting), Ghostscript (PDF reports) [1]

The dependency list is long. On a well-maintained Linux system, the package manager handles it. On Windows, it’s a friction point.

Gramps Web (self-hosted web tier):

  • Docker-based deployment
  • Separate repository from the desktop app
  • Requires a running Gramps database (you set it up on desktop first, then sync or import to the web server)
  • Exposes a REST API and a web UI
  • Realistic estimate: 1–2 hours for someone comfortable with Docker; half a day for someone learning Docker alongside it [3]

What can go sideways:

  • GTK on macOS and Windows has consistent friction. Users report UI rendering issues and occasional crashes on non-Linux platforms.
  • The desktop app does not auto-update — you manage version upgrades yourself.
  • Large databases (100K+ individuals) can be slow in some views.
  • Gramps Web is a separate project with its own release cadence; it may lag behind desktop features.
  • The GEDCOM import from Ancestry is imperfect — custom Ancestry fields and hints don’t transfer, and media attachments require manual re-linking in some cases.

Pros and cons

Pros

  • GPL-2.0 license. Truly free, permanently open source. No “open core” model, no commercial upsell tier [1].
  • Your data, your format. The database is a local file. GRDB and XML formats are documented and open. You’re not trapped [1][3].
  • 20+ years of genealogy-specific development. The data model handles edge cases (half-siblings, adoptions, multiple marriages, historical calendars, place hierarchies) that newer apps don’t. This is deep domain expertise baked in [3].
  • Report engine. Narrative Web output, book-quality family history reports, and 30+ report types make Gramps the only self-hosted tool that can produce a publishable family history document [1][3].
  • Geography view. Integrated map view of places in your tree — a genuine research feature, not a marketing checkbox [1].
  • Translation coverage. Active translations via Weblate into dozens of languages — practical for non-English family histories [1].
  • Plugin ecosystem. Community addons extend functionality without waiting for the core team [3].

Cons

  • GTK desktop app, not a modern web app. The UI is functional but it looks and feels like a Linux application from 2010. Non-technical users expecting Ancestry’s interface will be culture-shocked.
  • Install complexity. The dependency list (Python, GTK, cairo, pango, osmgpsmap, Graphviz, etc.) is real. On Linux it’s manageable. On Windows and macOS, it’s a known friction point [1].
  • No built-in records access. Gramps manages what you enter; it doesn’t surface census records, passenger lists, or BMD certificates. You still need FamilySearch, Ancestry, or other sources for research [3].
  • Gramps Web is a separate project. Collaborative or remote access requires a second deployment layer, not just enabling a setting [3].
  • 2,852 GitHub stars is modest for a 20-year-old project — it reflects that the user base skews toward a pre-GitHub generation who don’t necessarily star repos, but it also means the community is smaller than popular automation or productivity tools [1].
  • No mobile client. There’s no official iOS or Android app. Gramps Web provides mobile-accessible UI via browser, but it’s not optimized for mobile data entry.
  • Documentation fragmentation. The Gramps Wiki is comprehensive but sprawling. New users often can’t find what they need without significant searching.

Who should use this / who shouldn’t

Use Gramps if:

  • You’re paying for Ancestry or MyHeritage and want your tree to exist somewhere you own.
  • You take genealogy seriously enough to care about source citations and want a proper citation model, not just name/date fields.
  • You’re on Linux and want a package-manager-installable genealogy tool that just works.
  • You want to publish a family history website or printed book from your research.
  • Data privacy matters — your tree contains adoption records, medical history, or anything you’d rather not have on a commercial server.

Skip it (use Ancestry/FamilySearch instead) if:

  • You’re new to genealogy and need record hints and automatic matching to get started. The discovery tools on Ancestry are genuinely valuable for beginners, and Gramps doesn’t replace them.
  • You primarily do genealogy on a phone or tablet.
  • You want zero setup — if the GTK dependency list reads like a barrier, it is one.

Skip it (use Webtrees instead) if:

  • You want a web-first self-hosted genealogy app with a modern browser UI.
  • Your family tree is collaborative and multiple people need to edit it remotely.
  • You don’t need the desktop report engine and just want a hosted family tree.

Skip it (stay on MacFamilyTree) if:

  • You’re on macOS and willing to pay ~$40 once for a native app that integrates cleanly with the OS, and the Gramps GTK interface bothers you.

Alternatives worth considering

  • Webtrees — modern, web-only, self-hosted genealogy app. PHP-based, Docker-deployable. Better collaborative features than Gramps, less powerful report engine. The default choice if you want a web UI from day one.
  • FamilySearch — free, cloud-based, backed by the Church of Jesus Christ of Latter-day Saints. Excellent record access, strong GEDCOM support, and free forever. Privacy trade-off: your tree is on their servers and collaborative by default.
  • Ancestry.com — the commercial incumbent. Best record matching and DNA integration. $25–46/mo. Your data is theirs, you’re renting access.
  • MyHeritage — cheaper than Ancestry, strong European and Middle Eastern record collections, DNA support. Still subscription, still cloud-hosted.
  • MacFamilyTree — native macOS/iOS app, one-time purchase, polished UI, decent report output. Mac-only and closed source.
  • GenealogyJ — older Java-based open-source desktop app. Mostly inactive. Gramps is the better maintained choice.
  • Heredis — commercial desktop app with iOS/Android sync, good GEDCOM support, one-time purchase with paid updates.

For the person escaping Ancestry’s subscription, the realistic shortlist is Gramps vs Webtrees. Pick Gramps if you want the desktop report engine, deep citation support, and don’t mind a Linux-era UI. Pick Webtrees if you want a modern browser interface and collaborative editing.


Bottom line

Gramps is the most feature-complete open-source genealogy program in existence, and it has been for two decades. For serious genealogists who care about citations, report output, and data ownership, it delivers things that $45/mo Ancestry subscriptions don’t. The trade-off is real: this is a GTK desktop application with a dependency list and an interface that expects some patience. It’s not what you hand to a relative who just wants to fill in a family tree on their phone. But for anyone who’s spent years building a tree on a subscription service and wants out — or for anyone who treats genealogical research as something worth doing properly — Gramps is the right tool, it’s been the right tool for a long time, and it costs nothing.

If the GTK install or the Gramps Web deployment is the blocker, that’s a one-time setup problem, not a recurring one. upready.dev handles that kind of deployment for clients who’d rather pay once than troubleshoot once.


Sources

  1. Gramps GitHub Repository — README and source code (2,852 stars, GPL-2.0 license). https://github.com/gramps-project/gramps
  2. Gramps Project — Official Website. https://gramps-project.org
  3. Gramps Wiki — Official documentation and user manual. https://gramps-project.org/wiki/index.php/Main_Page

Note: No usable third-party review articles were available in the source data for this tool. This review is based on the project README, official documentation, and firsthand knowledge of the software.