Make a Telegram QR Code for Your Channel or Chat
Enter your username, style the code to match your signage, and download one that opens Telegram in the app or on the web - with no invite link that expires underneath you.
Opens in Google Maps. Coordinates work too - "37.4224, -122.0841".
The code opens your business's "Write a review" form. Paste the Place ID, or a Google Maps link that carries one.
A UPI link carries no checksum, so a mistyped ID produces a code that scans perfectly and pays somebody else. Paste the ID from your payment app rather than typing it, and send yourself one rupee before printing.
Paste it exactly as copied. KoloQR does not assemble the payload - it encodes the one your bank issued, and checks it before you print it.
SVG, PNG, JPG • Max 2 MB
What Is a Telegram QR Code?
A Telegram QR code is a QR code that stores a t.me link - the web address of a Telegram user, channel, group, or bot. Scanning it opens that destination in the Telegram app if it is installed, or on Telegram's web version if it isn't. The link lives in the pattern, so the printed code needs nothing behind it.

Public Username or Invite Link - They Are Not the Same
Telegram has two link shapes, and only one of them is safe to print:
- t.me/yourname - a public username. Permanent while you hold the name, short (about 18 characters), and readable by anyone. This is the one to encode.
- t.me/+AbCdEf123... - an invite link to a private group or channel. It carries a random hash, can be revoked, and can be configured to expire on a date or after a set number of joins.
- t.me/yourbot?start=code - a bot deep link. The text after start= is handed to the bot on first message, which is how a scan can identify a table, a batch, or a campaign.
Printing an invite link is the mistake worth naming, because it fails silently and late: the code works during testing, works for the first week, and then one day returns “this invite link has expired” to everyone who scans it - with the printed run already out in the world. If the destination must be private, generate an invite link with no expiry and no usage limit, and accept that anyone who photographs the code can pass it on. Discord invites have the same trap with worse defaults.
Telegram's Own Code Versus a Generated One
Telegram generates a QR code for any username inside the app, and it is a real QR code that any camera reads - so unlike LinkedIn's, it is not broken outside its own app. The differences are narrower and they are about print. Telegram's code comes out as a screen-resolution image with a fixed circular style and its own palette, which is fine on a phone and soft once a printer scales it up; it always points at a username, so it cannot carry a bot's start parameter or a specific message; and it cannot be drawn in your own shape or colours. A generated code holds the same t.me link, exports as vector at any size, and can be designed to sit inside your own artwork. For showing on a screen to someone across a table, use Telegram's. For a shop window, a poster, a package, or anything a printer will touch, generate one.
Generate QR Code
Where Telegram QR Codes Are Used
Telegram's strength is the broadcast channel and the bot, and both are hard to reach from print without a code:
- 1
Set a Public Username on the Account or Channel
In Telegram's settings, give the account, channel, or group a public username. This is what makes the link permanent and short instead of a revocable invite hash.
- 2
Pick Telegram and Enter the Username
Type the username and KoloQR adds t.me/ in front. For a bot deep link or a private invite, paste the full URL instead.
- 3
Customize the Design
Choose a shape, set the colors, add a logo. Telegram's light blue is too pale to carry the modules on white - use it around the code, not inside it.
- 4
Test and Export
Scan on a phone without Telegram installed as well as one with it. Then export SVG or PDF for print, PNG for screens.

Which File Format Should You Download?
KoloQR exports your Telegram QR code in three formats. Pick by where it will be seen:
- PNG for websites, chat messages, and slides, where the code appears at one fixed size.
- SVG for window stickers, table tents, and packaging - anything a printer scales without softening the edges.
- PDF for handing to a print shop or a signage supplier at print-ready quality.
A t.me username link is one of the shortest payloads on this site - around 18 characters - which means a sparse pattern with large modules that reads from further away and prints smaller than most. That is worth protecting: it disappears the moment you swap the username for an invite hash or a long start parameter.
Generate QR CodeBest Practices for Telegram QR Codes
Telegram's link model is the source of both the best and the worst outcomes here:
Print a Username Link, Not an Invite Link
t.me/yourname is permanent while you hold the name. An invite hash can be revoked or set to expire, and a printed code has no way to learn that it has.
If It Must Be Private, Remove the Limits First
Generate the invite link with no expiry date and no usage limit before you encode it, and note that anyone can forward the code onward once it is public.
Keep Bot Start Parameters Short
The text after start= is encoded verbatim. “t12” for table twelve costs three characters; a UUID costs thirty-six and a symbol version or two.
Say What the Scan Opens
Channel, group, chat and bot behave differently on arrival. “Scan to join our channel” sets an expectation that a bare logo does not.
Telegram Blue Is Too Light for the Modules
The brand blue lacks contrast against white at pattern size. Use it in the surrounding artwork and keep the modules dark.
Check the Web Fallback
Without the app, a t.me link lands on Telegram's web page for that destination, which shows a preview and an open-in-app prompt. Scan it that way once so you know what a new visitor sees.
Hold the Username
Telegram releases usernames from inactive accounts and lets you change yours freely. A changed username breaks every printed code pointing at the old one, and someone else can take it.
Protect the Quiet Zone
Four modules of clear margin on every side. A sparse Telegram code is forgiving of most things, but not of a missing quiet zone.
Size It for the Distance
Roughly a tenth of the reading distance: about 2 cm on a table sticker, about 20 cm on a window read from 2 metres. The short URL means you can be at the small end of the range.
Test on Both Phones
iOS and Android hand t.me links to the app slightly differently, and the difference shows most on a phone that has Telegram installed but not signed in.
Why Your Telegram QR Code Isn't Working
A Telegram code that worked last month can stop working this month, which is unusual and specific to how Telegram links work.
The Scan Says the Invite Link Has Expired
- Cause
- The code encodes a t.me/+ invite link that was created with an expiry date or a usage limit, or that has since been revoked. The code is intact; the link behind it was time-limited.
- Fix
- Give the channel or group a public username and encode t.me/yourname instead. If it must stay private, issue a fresh invite with no expiry and no join limit, then reprint.
The Scan Opens a Web Page Instead of the App
- Cause
- Telegram is not installed, or the phone did not hand the link over. t.me falls back to Telegram's web page for that destination, which shows a preview and an open-in-app button.
- Fix
- This is the intended fallback and works fine - but check what it shows for your destination, because a private group's web page is far less informative than a public channel's.
The Bot Doesn't Recognise Where the Scan Came From
- Cause
- The start parameter is missing or malformed. t.me/yourbot alone opens the bot with no context; only t.me/yourbot?start=value passes anything through.
- Fix
- Include the start parameter, keep it short and URL-safe, and test by scanning rather than by typing - some link shorteners strip query strings, which removes it silently.
The Code Stopped Resolving After a Rename
- Cause
- The username changed. Telegram frees the old one immediately and provides no redirect, so a printed code now points at nothing - or eventually at someone else.
- Fix
- Reclaim the old username if it is still free, or reprint. For long-lived packaging, encode a short URL on your own domain that redirects to t.me, so a rename costs one edit.
Still not sure whether the fault is the file or the print? Drop the exported image into the QR code scanner - if it decodes on a desktop and not on paper, the fault entered after the file.
Questions? Answered
A Telegram QR code stores a t.me link - the address of a Telegram user, channel, group, or bot. Scanning it opens that destination in the Telegram app if installed, or on Telegram's web version if not.
Give the channel a public username in its settings, then choose the Social type in KoloQR, pick Telegram, and enter that username. Style it, then download PNG or SVG. No account needed.
Because invite links can be revoked and can be set to expire on a date or after a number of joins. The code keeps scanning; the link behind it stops working, and printed copies can't be updated.
Telegram's works with any camera, so it's fine on screen. But it's a fixed-style, screen-resolution image that always points at a username. A generated code exports as vector, carries bot parameters, and can be styled.
Yes. Encode t.me/yourbot?start=value and the bot receives that value when the chat opens. Keep it short - it's encoded verbatim, so a long identifier makes a noticeably denser pattern.
Every printed code pointing at the old one stops working, with no redirect, and the freed username can be taken by someone else. Settle it before printing, or encode a redirect on your own domain.
No. Without it, the t.me link opens Telegram's web page for that destination, showing a preview and an open-in-app prompt. Public channels look far better on that page than private groups do.
No. The brand's light blue doesn't hold enough contrast against white at module size. Use it in the artwork around the code and keep the pattern dark.
Because t.me is a very short domain. A username link runs about 18 characters where an instagram.com or linkedin.com URL runs 30 to 40, so the same printed square holds fewer, larger modules.
Not directly, but a bot can: encode t.me/yourbot?start=poster1 and the bot records which printed code each new conversation came from. That's more precise than scan counting on any other network here.
Keep Exploring
Pages that pick up where this one leaves off - the same setting, the same kind of code, or the next thing worth deciding.
WhatsApp QR Code
Open a WhatsApp chat with your number in one scan, without anyone saving your contact first.
Facebook QR Code
Open your Facebook Page, group, or Messenger chat with one scan.
LinkedIn QR Code
Share your LinkedIn profile or company page with a code any phone camera can read.
How to Scan a QR Code With a Phone, a Screenshot, or a Second Device
The camera does it on both platforms, but the awkward cases - a screenshot, a code on the phone you are holding, a login code - each need a different move.
Business Cards
The one surface where a code is read at arm's length - so it is designed into the card's layout rather than dropped in the corner of it.
Discord QR Code
Open a Discord server invite with one scan - if the invite is set never to expire.
Why KoloQR?
- Create QR codes for websites, menus, Wi-Fi, PDFs, and business cards
- Customize colors, logos, and unique shapes
- Download high-quality PNG and SVG files
- Built for both print and digital
