GIF angavu ndogo kabisa ina baiti 43.
Hii ndiyo yote. Chagua baiti yoyote uone inachofanya, kisha unakili faili, uipakue, uifanyie hotlink, au uitoe kutoka kwenye msimbo wako mwenyewe.

Kila baiti inafanya nini
GIF ni mfuatano wa bloku. Hii ina bloku saba, na kila rangi kwenye ukurasa huu ni ya mojawapo. Chagua baiti au bloku uisome. Namba huhifadhiwa kwa mpangilio wa little-endian: baiti ya chini huja kwanza, kwa hiyo 01 00 inamaanisha 1.
| Baiti | Sehemu | Maana |
|---|---|---|
| Kichwa Humwambia decoder kwamba hii ni GIF na toleo gani la umbizo litarajiwe. | ||
| 47 49 46 | Sahihi | Herufi za ASCII “GIF”. Kila faili ya GIF huanza nazo. |
| 38 39 61 | Toleo | “89a”. 89a inahitajika kwa uwazi; 87a haina kiendelezi cha udhibiti wa michoro. |
| Kielezo cha skrini ya kimantiki Ukubwa wa turubai na jinsi jedwali lake la rangi lilivyopangwa. | ||
| 01 00 | Upana wa turubai | 1 px. |
| 01 00 | Urefu wa turubai | 1 px. |
| 80 | Bendera zilizounganishwa | Mipangilio minne imebanwa katika baiti moja. Biti ya juu inaonyesha kwamba jedwali la rangi la jumla linafuata; biti tatu za mwisho zinatoa ukubwa wake. |
| 00 | Fahirisi ya rangi ya usuli | Ingizo 0 la paleti. Vivinjari hulipuuza na kuonyesha kilicho nyuma ya picha. |
| 00 | Uwiano wa umbo la pikseli | 0 inamaanisha pikseli za mraba, bila marekebisho. |
| Jedwali la rangi la jumla Paleti. Pikseli huhifadhi fahirisi ya orodha hii badala ya rangi. | ||
| FF FF FF | Ingizo la paleti | Nyekundu, kijani na bluu, baiti moja kila moja: #ffffff. Maingizo mawili ndilo jedwali dogo kabisa ambalo GIF inaweza kuwa nalo. |
| 00 00 00 | Ingizo la paleti | Nyekundu, kijani na bluu, baiti moja kila moja: #000000. Maingizo mawili ndilo jedwali dogo kabisa ambalo GIF inaweza kuwa nalo. |
| Kiendelezi cha udhibiti wa michoro Bloku ya hiari iliyoongezwa katika GIF89a. Hapa inafanya ingizo 0 la paleti kuwa angavu. | ||
| 21 | Kitangulizi cha kiendelezi | 0x21 (“!”) hutangaza bloku ya kiendelezi. |
| F9 | Lebo ya udhibiti wa michoro | 0xF9 inaonyesha kwamba kiendelezi hiki ni kiendelezi cha udhibiti wa michoro. |
| 04 | Ukubwa wa bloku | Baiti 4 za mipangilio zinafuata. |
| 01 | Bendera zilizounganishwa | Biti ya chini kabisa ni bendera ya uwazi. Imewashwa, kwa hiyo fahirisi ya rangi angavu iliyo hapa chini inatumika. |
| 00 00 | Muda wa kusubiri | Sehemu 0 za mia moja za sekunde. Ni muhimu kwa uhuishaji pekee. |
| 00 | Fahirisi ya rangi angavu | Ingizo 0 la paleti huchorwa likiwa angavu kabisa. |
| 00 | Kifungaji cha bloku | Bloku-ndogo yenye urefu sifuri inayofunga bloku. |
| Kielezo cha picha Mahali picha ilipo kwenye turubai na ukubwa wake. | ||
| 2C | Kitenganishi cha picha | 0x2C (“,”) huanzisha picha. |
| 00 00 | Kushoto | Picha inaanza 0 px kutoka ukingo wa kushoto wa turubai. |
| 00 00 | Juu | Picha inaanza 0 px kutoka ukingo wa juu wa turubai. |
| 01 00 | Upana wa picha | 1 px. |
| 01 00 | Urefu wa picha | 1 px. |
| 00 | Bendera zilizounganishwa | Hakuna jedwali la rangi la ndani, haina interlace. Picha inatumia paleti ya jumla. |
| Data ya picha Pikseli, zimebanwa kwa LZW na kugawanywa katika bloku-ndogo za hadi baiti 255. | ||
| 02 | Ukubwa wa chini wa msimbo wa LZW | 2, kwa hiyo misimbo iliyobanwa huanza na upana wa biti 3. |
| 02 | Ukubwa wa bloku-ndogo | Baiti 2 za data iliyobanwa zinafuata. |
| 44 01 | Pikseli zilizobanwa | Misimbo ya LZW iliyopangwa kuanzia biti ya chini kabisa. Tazama jinsi inavyosimbuliwa hapa chini. |
| 00 | Kifungaji cha bloku | Bloku-ndogo yenye urefu sifuri inayofunga bloku. |
| Trailer Baiti moja inayoashiria mwisho wa faili. | ||
| 3B | Trailer | 0x3B (“;”) humaliza faili. |
Ndani ya baiti za bendera
Kila moja ya baiti tatu huhifadhi mipangilio kadhaa midogo. Biti 7 ndiyo ya kushoto kabisa.
0x800x010x00Jinsi baiti mbili zinavyobeba pikseli moja
Kwa ukubwa wa chini wa msimbo wa 2, decoder husoma misimbo ya biti 3. Msimbo 4 husafisha jedwali, msimbo 5 humaliza picha, na misimbo 0 hadi 3 ni maingizo ya paleti. Baiti 44 01 husomwa kuanzia biti ya chini kabisa:
0x44 010001000x01 00000001
- 001100 = 4Clear: anza na jedwali jipya
- 000000 = 0Pikseli: ingizo 0 la paleti
- 101101 = 5Mwisho wa picha
- 0000000 Biti za kujaza zisizotumika
Picha kubwa zaidi hutumia mbinu hiyohiyo: kila msimbo mpya unawakilisha mfululizo mrefu kwa pikseli moja kuliko uliotangulia, kwa hiyo GIF angavu ya 1000×1000 inachukua baiti 1,743 tu.
Inaweza kuwa ndogo zaidi?
Ndiyo, ukiondoa sehemu ambazo decoder huvumilia zikikosekana. Tulijaribu kila lahaja kwenye injini tatu za vivinjari na kwenye Pillow, na tukarekodi zilichochora.
| Ukubwa | Lahaja | Chromium | Firefox | WebKit | Pillow |
|---|---|---|---|---|---|
| 43 | Faili ya kawaida kwenye ukurasa huu. | Angavu | Angavu | Angavu | Angavu |
| 42 | Hakuna baiti ya trailer. Decoder husimama mwisho wa data hata hivyo. | Angavu | Angavu | Angavu | Angavu |
| 37 | Hakuna paleti kabisa. Bado ni halali: maelezo rasmi ya GIF yanaruhusu decoder kutumia paleti yake, na fahirisi 0 ni angavu hata hivyo. | Angavu | Angavu | Angavu | Angavu |
| 36 | Hakuna paleti wala trailer. | Angavu | Angavu | Angavu | Angavu |
| 35 | Hakuna bloku ya uwazi: pikseli huchorwa kwa rangi 0 ya paleti, yaani nyeupe. | Nyeupe | Nyeupe | Nyeupe | Nyeupe |
| 35 | Umbizo la 1987. Halina njia ya kuweka alama kwamba rangi ni angavu. | Nyeupe | Nyeupe | Nyeupe | Nyeupe |
| 34 | Bloku ya uwazi ipo, lakini hakuna pikseli zilizobanwa. | Angavu | Angavu | Angavu | Hitilafu |
| 33 | Ileile, bila trailer. | Angavu | Angavu | Angavu | Hitilafu |
| 29 | Hakuna paleti wala uwazi. Kila injini huchagua rangi yake. | Nyeusi | Nyeupe | Angavu | Nyeusi |
| 26 | Picha isiyo na data iliyobanwa kabisa. | Angavu | Angavu | Angavu | Hitilafu |
| 14 | Kichwa, ukubwa wa turubai na trailer tu. Hakuna picha ndani yake. | Angavu | Hitilafu | Angavu | Hitilafu |
Tumia baiti 43 inapobidi ifanye kazi kila mahali. Baiti 37 bado ni GIF halali na ilikuwa angavu kwenye kila injini tuliyojaribu. Chini ya hapo unategemea uvumilivu wa decoder, na faili ya baiti 29 inaonyesha jinsi injini zinavyotofautiana.
Ilikaguliwa tarehe 23 Septemba 2026 kwa Chromium 153.0.8010.12, Firefox 155.0, WebKit 26.6, Pillow 12.2.0.
Tengeneza ya ukubwa wowote
Angavu au rangi moja, kuanzia 1×1 hadi 65535×65535. Inatengenezwa kwenye kivinjari chako; hakuna kinachotumwa kwenye seva.
Ifanyie hotlink
Unganisha moja kwa moja na faili hizi kutoka tovuti, barua pepe au programu yoyote. Zinatolewa kutoka edge ya Cloudflare kwa muda mrefu wa cache, na CORS iko wazi kwa wote.
- Faili ya baiti 43
https://emptygif.com/1x1.gif - Ukubwa wowote, angavu
https://emptygif.com/px/300x250.gif - Ukubwa wowote, rangi moja
https://emptygif.com/px/300x250/ff5a1f.gif - JSON API: ukubwa, base64 na data URI
https://emptygif.com/api/gif?w=300&h=250 - Vipande vyote vya msimbo kama JSON
https://emptygif.com/snippets.json - Muhtasari kwa mawakala wa AI
https://emptygif.com/llms.txt
Header za majibu
HTTP/2 200
content-type: image/gif
content-length: 43
cache-control: public, max-age=31536000, immutable
access-control-allow-origin: *
cross-origin-resource-policy: cross-origin
timing-allow-origin: *Mfano
<img src="https://emptygif.com/1x1.gif" width="1" height="1" alt="">
Ukubwa unaotengenezwa unafika hadi 4096 px kwa kila upande. Ikiwa una trafiki kubwa, tafadhali pakua faili na uihifadhi kwenye seva yako.
Itoe kutoka kwenye stack yako
Vipande 173 vya msimbo vilivyo tayari kuendeshwa. Chagua chako: kila kimoja hujibu kwenye njia unayochagua kwa jibu la image/gif. Ukibadilisha ukubwa au rangi hapo juu, vipande vinatumia GIF hiyo.
JavaScript & TypeScript
Edge & serverless
- Cloudflare Workers
- Cloudflare Workers (Rust, workers-rs)
- Cloudflare Pages Functions
- Deno Deploy (deno serve)
- Vercel Functions
- Netlify Functions
- Netlify Edge Functions
- AWS Lambda (Node.js)
- AWS Lambda (Python)
- AWS Lambda (Go)
- AWS Lambda (Rust, lambda_http)
- AWS Lambda@Edge (CloudFront)
- Google Cloud Run functions (Node.js)
- Google Cloud Run functions (Python)
- Firebase Cloud Functions + Hosting
- Azure Functions (Node.js v4 model)
- Fastly Compute (JavaScript)
Python
JVM
PHP
Elixir, Erlang & Gleam
Functional languages
C, C++ & systems languages
Swift, Dart & other languages
Web servers & proxies
Command line & one-liners
Express JavaScript
import express from 'express';
const GIF = Buffer.from('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==', 'base64');
const app = express();
app.get('/pixel.gif', (req, res) => {
res.set('Cache-Control', 'no-store');
res.type('gif').send(GIF);
});
app.listen(8080);
Tuliendesha kipande hiki na kulinganisha baiti kilizorudisha. Fungua ukurasa
Inatumika kwa nini
- Tracking pixel na beacon: seva hurekodi ombi na kujibu kwa picha halali ndogo kabisa.
- Vishika-nafasi (placeholder) vya picha zinazopakiwa kwa kuchelewa (lazy-load), ili tagi ya
imgiwe halali kabla chanzo halisi hakijafika. - Viweka-nafasi (spacer) vya ukubwa maalum kwenye barua pepe za HTML, ambako CSS haiungwi mkono kikamilifu.
- Majaribio na mock zinazohitaji picha halisi bila kubeba faili ya picha.
Tracking pixel hazitegemewi kama zinavyoonekana
Apple Mail hupakua mapema picha za mbali kupitia proxy wakati Mail Privacy Protection imewashwa, kwa hiyo “open” iliyorekodiwa huenda haikutokana na mtu halisi. Gmail pia huchukua picha kupitia proxy yake na kuzihifadhi kwenye cache. Programu nyingi za barua pepe huzuia picha za mbali kwa chaguo-msingi. Kwa takwimu za ukurasa, navigator.sendBeacon() au jibu la 204 No Content mara nyingi hufaa zaidi kuliko picha.
Maswali
- Kwa nini inaitwa tupu ilhali ina pikseli?
- GIF lazima iwe na angalau pikseli moja. Hii ni 1×1 na rangi yake pekee imewekwa alama kuwa angavu, kwa hiyo hakuna kinachoonekana.
- Je, faili ya baiti 43 ni halali?
- Ndiyo. Inafuata kikamilifu maelezo rasmi ya GIF89a, na kila injini kwenye jedwali lililo juu huichora ikiwa angavu.
- Kwa nini GIF na si PNG au WebP?
- Ni ndogo kuliko PNG angavu ndogo kabisa, na kila kivinjari, programu ya barua pepe na maktaba ya picha ya miaka 35 iliyopita inaweza kuisoma.
- Nitumie data URI au faili?
- Data URI huokoa ombi moja na inafaa kwa placeholder na CSS. Faili au endpoint inahitajika pale ombi lenyewe ndilo lengo, kama kwa tracking pixel.
- Nitume Content-Type gani?
image/gif. OngezaCache-Control: no-storeikiwa kila ombi lazima lifike kwenye seva yako.