The checked list of platform alternatives directory. The checked list of platform alternatives directory
Image: Productivity Software Reviews

Costs

The checked list of platform alternatives directory

A platform alternatives directory entry names a real incumbent, a real candidate, and the job the candidate cannot do, with dates on every tested row.

What to take away

  • A platform alternatives directory entry is a tripleincumbent, job, candidate. One candidate can be excellent for one job and useless for another on the same incumbent.
  • The row that earns the entry is what the candidate does not replace. Everything else is on a marketing page.
  • Test the incumbent's export and the candidate's import separately, against the same file. They fail independently, and only one is advertised.
  • Name real services. An entry that says "a forum platform" instead of naming one is a schema, not a directory.
  • Date every checked row. A "covers" line from two years ago reads like last month's unless the date sits beside it.
  • The checked list below names six incumbents and their candidates: a Facebook group, Mailchimp, Google Analytics 4, Salesforce, Dropbox, and Evernote.

Why one service rarely replaces another

Large services accumulate. A product starts as one thing. It adds messaging, then scheduling, then storage, then a directory. It adds payments through ordinary feature accumulation. Every successful product does this. By the time anyone wants to leave, it does six jobs and the user has stopped noticing five.

A candidate usually does one of those six jobs well. The honest answer to "what can I use instead" is two or three services plus an accepted loss. A directory that pretends otherwise sets up a migration that fails in week three, when someone finds the sixth job was load-bearing.

So the triple: for this job, on this service, these candidates, with these gaps.

The entry

FieldContentSource
IncumbentThe service being replaced, by stable keyThe catalog's own entry
JobOne sentence naming the outcome, in the reader's termsEditor, not marketing
CandidateThe service proposed, by stable keyThe catalog's own entry
CoversWhich parts of the job it does, specificallyReader check against vendor docs
Does not replaceWhich parts it does not, specificallyReader check, and the important row
Import pathWhat the candidate takes in, in what format, and whether it workedReader runs it
Export path from incumbentWhat the incumbent gives out, and whether the two formats meetReader runs it
Audience carriedWhether any contactable audience transfers, or noneReader check, and usually none
Ongoing cost shapeFree, paid, self-hosted, or a mixPricing pages
CheckedDate, tier, and regionReader's record

Ten fields, two of them tests the reader runs and one a judgment. A directory of relationships with no checks is a directory of opinions about relationships.

Ten fields per entry

  • Incumbentservice replaced, stable key
  • Jobone sentence, reader's terms
  • Candidateproposed service, stable key
  • Coverswhich parts it does
  • Does not replacewhich parts it does not
  • Import pathformat and whether it worked
  • Export pathformats meet or not
  • Checkeddate, tier, region

The schema follows the same logic as the fields a single-service entry needs, with a source class and half-life per field.

What changes here is that half the fields decay when either end moves, so an entry's half-life is the shorter of the two.

Checked entries: five incumbents and their candidates

Five incumbents sit in the table below, with a sixth in the worked example after it. Prices are the list rates on vendor pages in early 2026, so check the current number before you decide. The date column is when the row was last checked. Every figure moves.

IncumbentJobCandidate and what it doesDoes not replaceChecked
MailchimpSend a weekly newsletter to a list I ownMailerLite: free up to 1,000 subscribers and 12,000 emails a month, paid from about $10 a monthMailchimp's template library; segments get rebuilt by handVendor page, Feb 2026
MailchimpSend a weekly newsletter to a list I ownBrevo: free 300 emails a day, Starter from about $9 a month for 5,000 emailsAutomation branches above the entry tierVendor page, Feb 2026
MailchimpSend a weekly newsletter to a list I ownKit, formerly ConvertKit: free up to 10,000 subscribers, paid from about $29 a monthDrag-and-drop template design; Kit is text-firstVendor page, Feb 2026
MailchimpSend a weekly newsletter to a list I ownButtondown: free up to 100 subscribers, $9 a month above thatVisual templates and hosted landing pagesVendor page, Feb 2026
Google Analytics 4Count pageviews and referrers on my sitePlausible: from $9 a month for 10,000 pageviews, cookie-freeA free tier; the 10,000-view ceiling arrives fastVendor page, Feb 2026
Google Analytics 4Count pageviews and referrers on my siteFathom: $15 a month for 100,000 pageviews, and its vendors say no cookie banner is needed in the EUEvent-level modeling and audience exports to ad platformsVendor page, Feb 2026
Google Analytics 4Count pageviews and referrers on my siteMatomo: self-hosted free, cloud from about $23 a monthSetup time on the self-hosted route; you run the databaseVendor page, Feb 2026
Google Analytics 4Count pageviews and referrers on my siteUmami: self-hosted free, cloud from about $20 a monthManaged hosting on the free tier is smallVendor page, Feb 2026
SalesforceTrack deals through a pipelinePipedrive: from about $14 a user a monthSalesforce's report builder and its app marketplaceVendor page, Feb 2026
SalesforceTrack deals through a pipelineZoho CRM: free up to 3 users, paid from about $14 a user a monthComplex territory rules and custom objectsVendor page, Feb 2026
SalesforceTrack deals through a pipelineHubSpot Sales Hub: free tier, Starter from about $20 a seat a monthDeep customization; HubSpot pushes you into its own workflowVendor page, Feb 2026
DropboxSync files across devicesGoogle Drive: 15GB free, 100GB for $1.99 a monthDropbox's block-level sync and its file-request linksVendor page, Feb 2026
DropboxSync files across devicesOneDrive: 5GB free, 100GB for $1.99 a monthSelective sync behaves differently on macOSVendor page, Feb 2026
DropboxSync files across devicesProton Drive: free tier, 200GB for about $3.99 a monthShared-folder permissions and Office co-editingVendor page, Feb 2026
DropboxSync files across devicesNextcloud: self-hosted free, managed hosting from about 5 euros a monthNothing is free once you count admin timeVendor page, Feb 2026
EvernoteKeep searchable notesObsidian: free for personal use, Sync from about $4 a monthWeb clipper parity; plugins cover part of itVendor page, Feb 2026
EvernoteKeep searchable notesNotion: free for personal use, Plus $10 a seat a monthOffline reliability and fast search across large vaultsVendor page, Feb 2026
EvernoteKeep searchable notesJoplin: free and open source, Joplin Cloud about 6 euros a monthThe Evernote clipper needs the desktop app's extensionVendor page, Feb 2026

Every row names a real incumbent and a real candidate. The job column decides the winner, and the same candidate can lose against the same incumbent on a different job.

Worked example: leaving a Facebook group

Say the incumbent is a Facebook group, the job is "host discussion my members can find by search", and the audience is 4,000 people who joined over six years.

Leaving a Facebook group

Discourse self-hosted

Covers
Threads, search, categories
Does not replace
Facebook identity
Cost shape
Server and admin time

Discord

Covers
Chat, roles, voice
Does not replace
Searchable archive
Cost shape
Free tier, paid boosts

Mighty Networks

Covers
Community, courses, payments
Does not replace
Existing member list
Cost shape
Per-member monthly fee

Circle

Covers
Community, events, directory
Does not replace
Public discoverability
Cost shape
Per-member monthly fee
CandidateCoversDoes not replaceCost shape
Discourse, self-hostedThreaded discussion, search, categories, member accountsThe Facebook identity people already have; nobody re-registers without a reasonYour server and admin time
DiscordReal-time chat, roles, voiceSearchable long-form archive; threads scroll awayFree tier, paid boosts
Mighty NetworksCommunity, courses, payments in one placeYour existing member list; import is a CSV you build yourselfFrom about $41 a month for 100 members
CircleCommunity and events with a clean member directoryPublic discoverability; nothing here is findable by a strangerFrom about $89 a month for 100 members
Discourse hosted by a vendorSame as self-hosted, without the serverNothing extra, but you rent rather than own the instanceFrom about $100 a month on the vendor's plan

Four of these five are real products with public pricing pages. Check the current per-member rate yourself; it changes, and the number that matters is the one on the page the day you decide.

The row doing the work is "does not replace". Discord is a fine answer to "where do we talk" and a poor answer to "where does the archive live". Same incumbent, same members, different job, different candidate.

The "does not replace" line

Write specifics, not warnings. "Does not carry your existing audience" is true of everything and helps nobody. "Import brings post text and dates, and not replies, so a conversation arrives as orphaned statements" is a finding someone can act on.

Four gaps recur across almost every category.

The audience. Almost never transfers. Where a candidate claims it does, find out whether it means contact details or a count.

The archive's addresses. Old links pointing at the incumbent do not follow you. Whether the candidate accepts a redirect, or preserves identifiers, is a real difference between candidates and is almost never mentioned.

The surrounding tooling. Whatever else you connected to the incumbent will not connect to the candidate on day one. This gap closes fastest and should be weighted least.

Other people's habits. Not yours, theirs. This gap ends migrations, and it belongs in the entry as a plain sentence, not a hope.

Import and export are two tests

Import and export are built by different people with different incentives, and they meet in the middle by accident.

Two tests, one join

  1. Run incumbent export first
  2. Inspect format, authorship, dates, media
  3. Run candidate import on that exact file
  4. Record both results and the join
  5. Usual outcome: formats do not meet
  6. Add conversion step, name who wrote it

Run the incumbent's export first and look at what you actually have: format, completeness, whether authorship and dates survived, whether media came as files or as links back to the service you are leaving. Then run the candidate's import against that exact file, not a sample the candidate provides.

Record both results and the join. The usual outcome is that both features work and the formats do not meet, so the migration needs a conversion step. Whether that step exists, and who wrote it, belongs in the entry.

This is the cost people are really asking about when they ask whether to switch. Naming it as a switching cost rather than an inconvenience makes it comparable with the cost of staying, which is the actual decision.

Keeping the directory current

Two ends move independently, so an entry is rechecked when either does. In practice it inherits the recheck triggers of both services: changes to export, import, pricing tiers, and ownership.

Never let an entry drift into a recommendation as it ages. Per-field checked dates are the fix, and the method runs through the catalog, including the four-source approach to building an entry.

Retire entries rather than leaving them. A triple whose incumbent has closed is history and belongs in an archive section with its dates. A triple whose candidate has closed is actively misleading and should be marked so the day you notice.

What this directory should not do

It should not rank candidates. The axes that decide a substitution are the structural ones in the six-axis comparison method, and they do not order. A candidate better on export and worse on discovery is not further up a list; it is a different trade.

It should not carry a "best alternative" field. The best one depends on the job, and the job is already a column, so the format has answered the question by construction.

It should not call anything a drop-in replacement. For a tool, occasionally true. For a network, never, for the reason the overview of what an alternative has to replace gives: a tool has users, and a network is its users.

Common questions

How many candidates per triple?

Two to four. Beyond that the entry stops being a decision aid and becomes a list, and the marginal candidate is usually one nobody checked. If you can only vouch for two, publish two and say what you did not check.

Can one candidate appear against many incumbents?

Yes, with a separate triple each time. The same service replaces different things to different degrees, and collapsing that into one entry loses exactly the information the format exists to carry.

What if no candidate covers the job?

Say so, in an entry with an empty candidate field and a filled "does not replace" line explaining what is missing from everything available. That is the page no commercial list will publish, and it is often the most useful one in the directory.

Is "keep using it and add something alongside" an entry?

It is often the right answer, and it fits the format: the candidate covers part of the job, the incumbent keeps the rest, and the entry says which parts go where. Recording it as a legitimate outcome stops the directory reading as an argument for leaving.

More in Costs

Latest from Method Desk