Skip to content
Comparison15 min read

Open Source Discord Ticket Bots: 4 Compared, and the Real Cost

Discord Tickets, Open Ticket, Modmail and Tickets, compared from their own repositories. What each does, what self hosting costs, and how to check the licence.

Published
Author
Dani, Founder, AI Ticket Bot

Which open source Discord ticket bots are actually maintained?

Search GitHub for a Discord ticket bot and you get hundreds of results. Almost all of them are forks, abandoned coursework, or the same project under a different username. Four are real, active projects with their own documentation and their own community.

ProjectRuns onLicence shownHosted optionHow it automates answers
Discord TicketsNode.js 20 or higherGPLv3Free public bot, plus a paid managed instanceTags, with an optional regular expression
Open TicketNode.jsGPL-3.0None found in their docsNothing in core, community plugins exist
ModmailPython 3.10AGPL-3.0Paid hosting from the maintainersSnippets that staff trigger
TicketsGo, Rust and SvelteOnly one repository showed oneNot assessed hereNot assessed here

The Tickets row is deliberately limited to what its public repositories show. We did not verify its current product claims, so this article makes none on its behalf.

Discord Tickets: the one most servers should start with

Discord Tickets is by eartharoid, published at discordtickets.app, and its repository description is unusually direct about the target: "The most popular open-source and self-hosted ticket management bot for Discord - a free alternative to the premium and white-label plans of other popular ticketing bots."

Three things make it the default recommendation.

It has no upsell. Their site states plainly that there is no premium plan and everyone gets everything for free. Claiming, working hours, feedback surveys, per category questions, transcripts and unlimited tags are simply on. Almost every other bot in this space, including ours, gates something.

It is properly licensed. GPLv3 on the repository, which means you may read it, run it, modify it and redistribute your changes under the same terms. That is a right, not a favour, and it is the whole point of choosing open source.

And it does not force you to host. Their README offers three routes in one line each: "Add the public bot - instant setup, but branded (great for testing)" or "Get a managed bot - your own bot, hosted by me (easy and cheap)" or run it yourself. Very few open source projects give you that ladder.

Their site states that since 2019, 400,000 users have created 1,000,000 tickets in 30,000 servers, with a footnote that server and ticket counts start from v3.0 in 2021. Our own live figures are more than 3,300 servers and more than 180,000 tickets over the bot's lifetime, counting V1 and V2 together. On track record alone, that row is theirs by roughly nine to one, and we would rather say so than hope you do not check.

We wrote a full head to head in AI Ticket Bot vs Discord Tickets, including where their free tier beats our free plan.

Open Ticket: the most configurable, and the most yours to run

Open Ticket, by DJdj Development, describes itself as "The most advanced self-hosted Discord ticket bot with transcripts, plugins, questions, claiming, pterodactyl support & more!" It is GPL-3.0, currently on version 4.2.1, and carries more than 400 stars.

Its pitch is configuration. Their repository claims more than 350 settings, translations into more than 38 languages, HTML transcripts, modal questions, ticket limits, claiming and pinning, autoclose and autodelete, priority levels, multi panel setups, and a plugin system with a set of pre made plugins on top.

What Open Ticket asks of you

Runtime
Node.js v20 in their README, v18 or higher in their getting started guide, so target 20
Configuration
Five JSON files, edited by hand
Database
JSON by default, with SQLite available as a plugin
Hosting
A VPS is recommended; Pterodactyl panels and Docker are supported
Hosted version
We found none offered, so self hosting is the path

That table is the honest summary of the trade. Nobody else gives you 350 knobs. Nobody else makes you turn them either. If you enjoy that, Open Ticket is the most capable thing on this list. If your reaction to "five JSON files" is a sinking feeling, that is useful information too.

One small thing worth flagging because it will cost somebody an evening: their README asks for Node.js v20 and their getting started guide says v18 or higher. When two of a project's own documents disagree, take the higher number.

Modmail: a different shape of ticket

Modmail is not really a ticket panel bot, and treating it as one is the most common mistake in this category. Its own README describes it as "A feature-rich Modmail bot for Discord" that "functions as a shared inbox between staff and members, similar to Reddit's Modmail".

The mechanic is a direct message relay. In their own words: "When a member sends a direct message to the bot, Modmail will create a channel or 'thread' into a designated category. All further DM messages will automatically relay to that channel; any available staff can respond within the channel."

It is AGPL-3.0, runs on Python 3.10, and carries more than 1,700 stars, which makes it the most starred project on this list. It has snippets, plugins with a community registry, searchable logs, and paid hosting from the maintainers if you would rather not run it.

Modmail suits you when

  • The member should never see a public channel appear
  • Reports are about other members
  • Your staff work from one shared inbox
  • Discoverability does not matter, everyone knows to DM

A panel bot suits you when

  • Tickets are a normal, visible part of your server
  • Requests are about your product or service
  • Different categories go to different teams
  • New members need a button to click

We compared the two patterns properly in Discord ticket bot vs Modmail. The short version is that Modmail is better at privacy and worse at discoverability, and neither of those is a bug.

Tickets: why published source is not the same as open source

This is the part that catches people out, and it is worth ten seconds of your time before you plan anything around a repository.

Tickets publishes a lot of code. Its GitHub organisation lists dozens of repositories, including the event handler that holds the logic in Go, the web dashboard in Svelte, the database layer, the export service and a Rust workspace. You can read essentially the whole system.

Reading is not the same as running. Of the repositories visible on that organisation when we looked, only one, their Patreon subscriptions app, displayed a licence, GPL-3.0. The core pieces displayed none.

Open source
Source you may read, run, modify and redistribute, because a licence says so
GPL-3.0
You may do all of that, provided your modified version is released under the same licence
AGPL-3.0
The same, extended to cover running the software as a network service
No licence file
Default copyright applies. By GitHub's own guidance, nobody may reproduce, distribute or create derivative works from it
Fork
Your own copy of a repository. Only lawful if the licence permits it

None of that is an accusation. Maintainers add licences later, a badge can be missing from an organisation listing while a LICENSE file sits in the tree, and plenty of projects simply never got round to it. The point is procedural: open the repository and look, before you fork it, deploy it or build a business on it. "The code is on GitHub" is a description of where a file lives, not a grant of rights.

Why do so many GitHub results look identical?

Because most of them are the same project.

Search for a self hosted Discord ticket bot and you will find repository after repository carrying the identical description: "An open-source and self-hosted ticket management bot for Discord - a free alternative to the premium and white-label plans of other popular ticketing bots." That is Discord Tickets' own description, and it travels with every fork.

We opened one of them at random. It was marked "forked from discord-tickets/bot" and had zero stars.

This matters more than it sounds. A comparison article that lists eight open source ticket bots is usually listing one project four times, and if you pick the wrong copy you inherit whatever bugs were current the day it was forked, with nobody maintaining it.

What does self hosting actually cost?

Free of charge and free of work are separate promises, and only the first one is true here.

What Discord Tickets' own docs ask for

Runtime
Node.js v20 or higher, with npm, pnpm or yarn
Network
A forwarded port that is not firewalled
Memory
At least 150MB, and npm can use roughly triple that during installation
Disk
At least 1GB
Database
MySQL 8 recommended; MariaDB, PostgreSQL and SQLite also supported
SQLite caveat
Their docs say to avoid it if you expect to use archiving, especially in large servers

Then add the parts no project lists, because they are yours: a reverse proxy and a certificate, backups you have actually tested restoring, a Node.js version that keeps moving, an update every time a release lands, and someone who notices at 2am when the process dies and tickets stop opening.

None of that is hard for somebody who has done it before. All of it is a weekend for somebody who has not, and unlike a weekend it never ends.

That is the fair comparison to make against a hosted bot. Ours installs with one command and builds the staff role, the private category, the panel channel and a published panel for you, which we walk through on the setup page. The equivalent honesty in the other direction is that our uptime is our problem to fix and yours to live with, and you can read the last 90 days of it on our status page, including the bad days.

What can none of them do?

Answer a question you have not already answered.

Discord Tickets has tags, which are the strongest automation on this list: a saved message with an optional regular expression, matched against messages in the channels you enable. Modmail has snippets that staff trigger. Open Ticket's core has neither, though its plugin ecosystem means somebody may well have built something, and a community plugin is a different maintenance promise from a core feature.

All of those are exact, free and predictable, and for a narrow set of questions that beats an AI outright, because you wrote the output yourself and it never drifts.

The limit is not the pattern. It is that a pattern only fires on the phrasings you thought of.

  • how do i get the supporter role

    Matches a pattern somebody wrote for "supporter role"

  • i paid for the sub thing yesterday and nothing showed up

    Same question, no keyword the pattern is watching for

  • refund

    Fires the refund tag reliably

  • bought the wrong tier by mistake, can that be undone

    Needs the refund tag, matches nothing

Every support team learns this the same way. You write twenty tags, they cover the top twenty phrasings, and members keep arriving with the twenty first. The gap does not close, because natural language does not run out of ways to ask.

Where an open source bot beats us outright

We should state this plainly rather than let you find it out later.

Open source wins when

  • You need to read the source, audit it, or have your security team sign it off
  • Your data must sit on hardware you control
  • Your budget is genuinely zero and has to stay there
  • You want insurance: if the maintainer stops, you still hold the code
  • You want to change behaviour nobody else wants changed

Hosted wins when

  • Nobody on your team wants to own a server, a database and an update habit
  • The problem is staff hours, not missing software
  • You need answers to questions nobody has written down yet

The fourth line is the strongest argument for open source and it is worth saying out loud even though it works against us. Every hosted product, ours included, is a company that could change its pricing, change its direction, or stop. A GPL licensed bot on your own hardware cannot be taken away from you. If that risk is the one that keeps you up, no feature list should talk you out of it.

Against us specifically: we are closed source and hosted only, there is no self hosting option and there will not be one soon, our AI is metered by a daily and monthly token budget, our free plan is capped at one panel, five categories, one open ticket per member and 90 day transcripts, and Premium is 9.99 euro a month against their nothing. We also have no Telegram, email or SMS support of any kind.

Can you keep the open source bot and still get AI answers?

Yes, and this is the option most comparisons leave out because it ruins their conclusion.

/ticket connect points our AI at ticket channels opened by a different ticket bot. It runs on every plan including Free, and any of the bots above qualifies, because they all open a normal Discord channel.

  1. 01

    Keep your current bot

    It carries on opening and closing tickets exactly as it does now

  2. 02

    Add ours alongside it

    One invite, no panel to rebuild, nothing to migrate

  3. 03

    Run /ticket connect

    Point it at the other bot, up to 10 connected bots per server

  4. 04

    Teach it once

    Paste your rules and FAQs into /ai train, or train it from the dashboard

You keep the ticketing you already trust, and you find out in a fortnight of real tickets whether the answers are worth anything. If they are not, disconnect and nothing about your setup changed. There is more detail on the connect page and in adding AI to any Discord ticket bot.

How we compared

How we compared

Sample
Each project's own repository and documentation only: discord-tickets/bot and discordtickets.app, open-discord-bots/open-ticket and its docs, modmail-dev/Modmail, and the TicketsBot GitHub organisation
Window
Read on 2 and 4 August 2026. Our own figures pulled from our live stats endpoint on 4 August 2026
Definition
AI resolved means a ticket closed with no staff message in it. Reply speed is stated as "in seconds" because the live average moves with load
Excluded
Review sites, directories, third party listings and any product claim we could not read on the project's own pages

We did not run all four in production, and we have not read any of them line by line. Star counts and version numbers are stated as floors because they move. Where a project's documentation does not state a limit, this article says it is not stated rather than guessing, because the absence of a stated limit is not evidence of a bad one.

So which one should you run?

If you want a ticket system and you would rather not host anything, take Discord Tickets' public bot. It is free, complete, and nothing in it is waiting to ask you for money.

If you want to own the whole thing, take Discord Tickets self hosted, or Open Ticket if you want more knobs than any hosted product will ever give you.

If members should be able to reach staff privately without a channel appearing anywhere, that is Modmail, and it is not a worse ticket bot, it is a different one.

And if the thing actually costing you is not tooling but the fortieth copy of the same question this week, no amount of configuration fixes that, because the answer is already written down somewhere. That is the only problem we are better at. Across more than 180,000 tickets in the bot's lifetime, roughly half closed with no staff message in them at all, usually within seconds of the member asking. Both of those numbers come from a public endpoint you can read yourself, and they move, which is why this page gives you a floor rather than a snapshot.

Finding out costs nothing, and we mean that in the narrow sense rather than the marketing one.

What trying it actually involves

Cost
Nothing. The free plan does not expire, and publishing your first ticket panel turns Premium on for 14 days on top of it
Payment method
None taken, at any point. There is no card on file to convert, so it cannot become a charge
Cancelling
Nothing to cancel. The 14 days end and the server returns to the free plan
What you lose at the end
The paid features switch off. Every panel, transcript and thing you taught the AI stays exactly as it is
The catch
One trial per server, once. Removing and re-adding the bot does not start another

That trial is granted for publishing a panel of ours, so it is the route for a server willing to run our ticketing. If you would rather keep the open source bot you already have and only connect the AI to it, that path stays on the Free plan and its limits are the ones listed further up.

Prices and caps render from the live catalog rather than being typed into this page, so what you read there is what you would actually be charged.

Read the plans and the limits

Sources and further reading

Frequently asked questions

What is the best open source Discord ticket bot?
Discord Tickets, for most servers. It is the most used of the four covered here, it is licensed GPLv3, its own site states there is no premium plan and everyone gets everything for free, and it offers a public bot and a paid managed instance if you would rather not run a server. Open Ticket is the better pick if you want to configure every detail yourself.
Is Open Ticket free?
Yes. It is licensed GPL-3.0 and its repository lists no paid tier, only optional GitHub sponsorship. The cost is that we found no hosted version offered, so running it means running a server, keeping Node.js current and applying updates yourself.
What does self hosting a Discord ticket bot actually require?
For Discord Tickets, their documentation asks for Node.js v20 or higher, a forwarded port that is not firewalled, at least 150MB of RAM with roughly triple that during installation, at least 1GB of disk, and a database, with MySQL 8 recommended and SQLite discouraged if you plan to use archiving. Open Ticket asks for Node.js and a set of JSON config files. Modmail needs Python 3.10. On top of any of them you own the reverse proxy, the backups and every update from now on.
Is source code on GitHub the same as open source?
No. Open source means a licence that grants you rights. A public repository with no licence file keeps default copyright, which by GitHub's own guidance means nobody may reproduce, distribute or create derivative works from it. Before you plan a fork or a self hosted deployment, open the repository and look for the licence, because being able to read code is not the same as being allowed to run it.
Do any open source ticket bots answer questions on their own?
Not in the sense of understanding a question. Discord Tickets has tags with an optional regular expression, so a message matching a pattern you wrote gets a reply you wrote. Modmail has snippets that staff trigger. Those are exact and free, and they only fire on phrasings you anticipated. None of the four ships a knowledge based AI in core.
Is AI Ticket Bot open source?
No, and that is a real point against us if auditability or self hosting matters to you. We are hosted only, you cannot read the source, and you cannot run it on your own hardware. What you can check is our uptime history, our public transcripts, our live stats endpoint and a free plan you can test everything on.
What does it cost to try the paid version against a free open source bot?
Nothing, and no card. Publishing your first ticket panel turns Premium on for 14 days by itself. When the 14 days are up the server drops back to the free plan and keeps every panel, transcript and thing you taught the AI. There is no payment method involved at any point, so it cannot become a charge, and there is nothing to remember to cancel. One per server, and a server already on a paid plan does not get one.

See it on your own server.

Add AI Ticket Bot free, teach the brain a few of your most common answers, and watch it clear the repetitive tickets on its own.

Keep reading