Guide · updated October 2026

How to use the WARP Generator

The generator hands you a free Cloudflare WARP configuration for AmneziaWG, Clash, WireSock or Xray. The standard server needs no account and nothing to install: the file is assembled in your browser in a couple of seconds. Below is every step, plus what each setting actually does.

  • 4 clients
  • 6 DNS resolvers
  • 10 locations
  • Free on standard

Quick start: four steps

The whole thing takes about two minutes. Read it once, then it is a single click every time after that.

  1. Open the site in a normal browser

    The address is warp-generation.github.io. If the link came through Telegram, do not open it inside the messenger — the in-app browser cannot save files. On Android, tap the three dots in the top right and pick “Open in browser”. On iPhone, use the compass icon or “Open in Safari”.

  2. Pick your client

    The home page has four blocks: AmneziaWG, Clash, WireSock and Xray. Each block holds several buttons — press the one that matches the app you already use, for example AWG 2.0 for the AmneziaWG client.

  3. Tune the settings — optional

    Each block has its own gear, and the panels differ. AmneziaWG and WireSock open DNS, split tunneling, the server and advanced options. Xray has no split tunneling and no AWG 3 block. Clash opens a different panel: foreign servers, combining MASQUE with AWG, MTU and AWG 3.0. The defaults already work.

  4. Download the file and import it

    Pressing the button saves the file to your downloads. AmneziaWG and WireSock produce a .conf, Clash a .yaml, Xray a .json. The name ends with a number from 10 to 99. AmneziaWG, WireSock and Xray also add a short prefix when the server is not standard or the DNS is not 1.1.1.1 or 8.8.8.8. Import that file into your client.

The number one cause of failure is Telegram's in-app browser.

There the download button either does nothing or dumps the config as plain text instead of a file. Always open the link in an external browser.

Which client should you pick

Four output formats are supported. If you have no preference, take AmneziaWG: it survives DPI filtering better than the rest and runs on every platform.

Client What you download Platforms
AmneziaWG recommended A .conf file with AmneziaWG settings. Three AWG 2.0 variants plus AWG 3.0 / 3.1 options Android, iOS, Windows, macOS, Linux
Clash A YAML profile for Clash Meta / mihomo, in AWG 2.0 or MASQUE mode. DNS in the file is always 1.1.1.1 Windows, macOS, Linux, Android, routers
WireSock A .conf file for WireSock. AWG 3.0 and 3.1 settings are not written into it Windows
Xray A JSON profile for Xray with WARP as an outbound. It has no split tunneling Windows, macOS, Linux, Android

Config formats produced by the generator.

Each block has its own gear. AmneziaWG opens the full set. WireSock opens the same set, but AWG 3.0 and 3.1 are not written into its file: Id gets the domain from “Custom I1”, or a random domain if that field is empty. Xray does not show split tunneling or AWG 3. Clash has a separate panel: the “Foreign servers” switch puts all locations into one YAML.

The three AWG 2.0 variants

The buttons “AWG 2.0 (variant 1)”, “(variant 2)” and “(variant 3)” emit different obfuscation parameter sets. If a connection will not establish, do not start editing values — just try another variant. Different carriers and networks accept different combinations.

MASQUE instead of AWG in Clash

The MASQUE button builds a profile on top of MASQUE, which runs over HTTP/3 and looks like ordinary HTTPS to a filter. It helps in networks that block AWG by signature. Clash’s panel has a “Combine MASQUE and AWG” switch: it hides the separate MASQUE button and builds both protocols with one click.

Generator settings explained

Everything behind the gear icon is optional. The notes below follow the AmneziaWG panel. Clash, WireSock and Xray are called out wherever they behave differently.

DNS

Six resolvers to choose from; Cloudflare is the default.

ResolverWhen to pick it
1.1.1.1Default
8.8.8.8Google Public DNS, if your ISP interferes with 1.1.1.1
dns.malw.linkFiltering resolver: drops malicious and phishing domains
xbox-dns.ruFor Xbox gaming services
geohide.ruWorks around regional restrictions at the DNS level
dns.comss.oneDNS by Comss

The last four resolvers — dns.malw.link, xbox-dns.ru, geohide.ru and dns.comss.one — reset the server to “Standard”, clear the service checkboxes and lock both the server list and split tunneling. Switch back to 1.1.1.1 or 8.8.8.8 to change them again. Clash does not use this DNS picker: its profile always uses 1.1.1.1.

Split tunneling

This decides whose traffic goes through WARP and whose goes direct. The “Exclude LAN” switch keeps your local network out of the tunnel, so printers, NAS boxes and the router itself stay reachable on local addresses.

Individual checkboxes pull specific services into the tunnel: YouTube, Discord, WhatsApp, Telegram, Twitter, Instagram, Facebook, Viber, Itch.io, RuTracker, Rutor, NNMClub, BestChange, AnimeGo and HDrezka. Leave them all unchecked and everything goes through WARP. The IP ranges come from the open iplist.opencck.org directory.

Service checkboxes and “Exclude LAN” cannot be used together. As soon as any service is checked, “Exclude LAN” turns off and locks: only those service IPs enter the tunnel. With no services checked, “Exclude LAN” sends everything except the local network. Xray and Clash have no such block; their profiles always carry all traffic.

Server

“Standard” is a shared Cloudflare endpoint with no registration and no traffic cap. The other ten are separate locations: Finland, the Netherlands, Poland, Latvia, Germany, Estonia, Russia, plus three LTE variants (Finland, Poland, Germany). AmneziaWG, WireSock and Xray pick one location from this list. Clash has a “Foreign servers” switch instead: it adds all ten to a single YAML.

Flagged locations other than [LTE] require registration through the @warp_generator_bot Telegram bot. Configs for them will not connect without it. Russia is on that list. The three LTE locations are not, according to the note under the server list.

Choosing any non-standard location, including LTE, makes AmneziaWG and WireSock show a traffic warning. That warning text does not mention the LTE exception; follow the note under the server list.

These locations are for services blocked by region, not for all of your traffic. Watching YouTube or pulling games and torrents through them gets your access revoked. Use the standard server for that. It has no such cap.

Advanced settings

MTU

Maximum packet size. An empty field means 1280. If the tunnel keeps dropping on mobile data, try 1200. If everything is stable, some people raise it to 1420. That is a suggestion: the interface has no such presets.

IPv6

On by default. The tunnel then carries an IPv6 address, the ::/0 route and IPv6 DNS addresses. Turn it off if a site fails because of IPv6 inside the tunnel.

PersistentKeepalive

Off by default. Turn it on if NAT drops an idle session: an empty field means 25 seconds. Worth having on mobile networks and behind aggressive NAT.

Custom I1

Off by default. A domain typed there is used to build a QUIC mask for the first packet. WireSock writes that same domain into Id; an empty field there means a random domain.

AWG 3.0 and AWG 3.1

The AWG 3.0 and AWG 3.1 switches are off by default. Turning them on for AmneziaWG renames the buttons from “AWG 2.0” to “AWG 3.0” or “AWG 3.1”. WireSock and Xray do not write these parameters into the file. Clash has the switches on its own panel, but the numbers are read from the AmneziaWG panel when the file is built. Type them there, or press Random — that writes the pair into both panels. Each field takes a minimum-maximum pair, for example 27-97. An empty field writes the placeholder into the file. Random fills in a new pair from wider bounds, not a single number from the column below.

ParameterIf left emptyWhat it controls
ContentPaddingAddition27-97Amount of random padding added to packets
MaxHandshakeAttempts18-26How many handshake attempts the client makes
KeepaliveTimeout9-16Keep-alive timeout for the session
RejectAfterTime171-196When a session is considered dead
RekeyAfterTime116-131When session keys start being reissued
RekeyTimeout6-9Wait window during key reissue

AWG 3.1 has two switches already checked: Random trailers appends random tails to packets, and Disable cookies turns off the QUIC cookie mechanism. Both take effect only after AWG 3.1 itself is turned on.

Frequently asked questions

Do I need an account to use the generator?

No, not for the standard server: open the site, click a client button and take the file. The @warp_generator_bot Telegram bot is required only for flagged locations other than [LTE]. Russia is on that list.

Why won't the config download inside Telegram?

Telegram's in-app browser blocks file downloads. On Android, tap the three dots in the top right and choose "Open in browser". On iPhone, use the compass icon or "Open in Safari".

What should I do if generation returns an error?

It is usually a temporary failure on the service side. Wait a few minutes and try again, or open the mirror linked in the error message. The message disappears after a couple of seconds.

What is the difference between the three AWG 2.0 variants?

They are three different traffic obfuscation parameter sets. If one variant does not connect, try the next one — different networks accept different sets.

Is the generator safe to use?

The downloaded file contains the private key of your tunnel, and the generator service is the one that issues it. Do not publish the file or pass it to anyone else.

Which client should I choose: AmneziaWG, Clash, WireSock or Xray?

AmneziaWG is the all-round choice for phones and desktops and handles DPI best. Clash suits desktops and routers and supports MASQUE. WireSock is for Windows. Xray is for people already running Xray who want WARP as an outbound: the download is a JSON config.

Why do some locations require registration, and can I torrent through them?

Flagged locations other than [LTE] are shared and require registration in the Telegram bot. They are meant for region-locked services. Do not route all of your traffic through them, watch YouTube, or download games and torrents — heavy usage gets your access blocked. Use the standard server for everything else; it has no traffic cap.

What are AWG 3.0 and AWG 3.1?

They are extra AmneziaWG parameters, and they are off by default. Each field takes a minimum-maximum pair: an empty field uses the placeholder, and the "Random" button fills in a new pair. Setting them by hand is rarely necessary. They have no effect on WireSock or Xray.

Things worth remembering

  • The config file is a key. It holds the private key of your tunnel, and the generator service is the one that issues it. Do not post the file in chats or hand it to other people.
  • Do not abuse the shared servers. The traffic limits on flagged locations are not decorative; exceeding them gets your access revoked.
  • Follow the law where you live. You are responsible for how you use these configurations.
  • This is an unofficial guide. The generator is based on work by llimonix and sageptr.

Ready to try it?

One button, and you have a working WARP config for the client you use.

Go to the WARP Generator →