SVG / TGS / JSON

SVG and TGS sample files for Telegram: free source downloads

Start with a small file whose behavior is easy to understand. These three purpose-built examples show a pulsing circle, a moving arrow and a static check mark. Each includes the source SVG, a TGS file and its uncompressed Lottie JSON.

The cards show the static SVG source. Motion is stored in the TGS and JSON; it is not embedded in the SVG. These are programmatically authored teaching examples, not files taken from user uploads.

Pulsing circle

Pulsing circle

Scale animation around the center. A simple closed path with four Bézier points helps isolate transform problems.

512 × 512 · 60 FPS · 2 s · 394 bytes

Moving arrow

Moving arrow

Position animation without rotating the shape. The source leaves enough space for its 56-pixel vertical movement.

512 × 512 · 60 FPS · 2 s · 381 bytes

Static check mark

Static check mark

An open path with a round stroke and no motion. Use it to compare stroke thickness and distinguish a static TGS from a PNG.

512 × 512 · 60 FPS · 3 s · 342 bytes

How to use the examples

  1. Download an SVG and open it in a vector editor. It contains a single shape, with no embedded photos or live text.
  2. Open the converter, select the SVG and sign in with Telegram. Selecting a file sends a diagnostic copy to the service; this also applies to these examples.
  3. Choose motion or static mode, inspect the preview and export TGS. The converter preset may use different timing and motion from the teaching TGS supplied here.
  4. Compare your export with the example: canvas size, fr, op, layers and animated properties. Then check the file in Telegram using @Stickers.

Open converter

What has been checked

The project validator checks gzip, JSON, a 512 × 512 canvas, 60 FPS, a duration of at most 3 seconds, a compressed size below 64 KB and supported shape data. Each example has one layer without external images; the first and last animated values match. This is a structural check, not confirmation that each file has been accepted by Telegram’s servers.

What to inspect in the JSON

The fr field sets the frame rate, op marks the composition end and layers lists the layers. The circle animates scale in ks.s; the arrow animates position in ks.p. The check mark has an open path, with c set to false, and a stroke defined by an st item. A zero a value marks a property without keyframes.

Reuse them in your own projects

The SVG to TGS team created these three examples. You may copy, modify and redistribute them, including in commercial projects, without payment or required attribution. This permission applies to these three file sets only; it does not cover the site source code, logo or third-party artwork.

Example usage terms

Keep the source file

The converter accepts source SVG. The TGS and JSON downloads here are for inspection and comparison; the converter cannot import them back. Keep SVG separately for future editing. Before testing a complex logo, confirm that a simple example completes the same workflow on your device.

Official Telegram requirements

Guides to SVG preparation and troubleshooting