# Miniatury na YouTube z szablonu: rozmiar, API i hurtowo

> Miniatury na YouTube z szablonu HTML: rozmiary, których wymaga YouTube, jedno zapytanie na film albo cała seria z CSV i wgrywanie przez API YouTube.

Opublikowano 2026-11-04 · https://shareglint.com/pl/use-cases/youtube-thumbnails

Żeby robić miniatury na YouTube z szablonu, zaprojektuj układ raz — twarz, duży tytuł, wyróżnione słowo, plakietkę kanału — a potem wysyłaj do API tekst i obrazki każdego filmu. Shareglint renderuje miniaturę w prawdziwym Chrome i w około sekundę zwraca JPEG albo PNG w proporcjach **16:9**, jakich wymaga YouTube; cała seria renderuje się z jednego arkusza. Wbudowane są cztery szablony miniatur (`video-thumbnail`, `thumbnail-face`, `thumbnail-tutorial`, `thumbnail-gaming`); możesz też napisać własny HTML i CSS.

Szablony nie zastąpią jednorazowej miniatury, którą grafik robi do najważniejszego filmu. Opłacają się wtedy, gdy kanał publikuje dużo w jednym rozpoznawalnym stylu: odcinki podcastu, lekcje kursu, skróty meczów, cotygodniowe podsumowania wiadomości albo ten sam film w pięciu wersjach językowych.

## Czego wymaga YouTube

Tak opisuje własne miniatury strona pomocy YouTube ([Pomoc YouTube](https://support.google.com/youtube/answer/72431?hl=pl), stan na 4 listopada 2026):

| | Film | Shorts | Podcast |
|---|---|---|---|
| Proporcje | 16:9 | 9:16 | 1:1 |
| Rozdzielczość | 3840×2160, min. szerokość 640 | 2160×3840, min. wysokość 640 | — |
| Formaty | JPG lub PNG | JPG lub PNG | JPG lub PNG |
| Rozmiar pliku | 2 MB z telefonu, 50 MB z komputera | tak samo | 10 MB z telefonu, 50 MB z komputera |

Własne miniatury wymagają zweryfikowanego konta. Tak mają się do tego presety:

- **`"size": "youtube"`** to 1280×720. Pliki rastrowe mają dwukrotność rozmiaru szablonu, więc plik ma **2560×1440** — 16:9, czterokrotność minimalnej szerokości. Pełne 3840×2160 dostaniesz, zapisując własny szablon w rozmiarze 1920×1080.
- **`"size": "story"`** (1080×1920) daje **2160×3840** do Shorts.
- **`"size": "square"`** (1080×1080) daje okładkę podcastu 2160×2160.

Każdy wbudowany szablon układa się w każdym presecie (og 1200×630, square 1080×1080, portrait 1080×1350, story 1080×1920, pinterest 1000×1500, youtube 1280×720), więc jeden projekt obsłuży film, Shorta i post dla społeczności kanału. Jeśli twój zespół wgrywa miniatury z telefonów, trzymaj plik poniżej 2 MB: JPEG (`"format": "jpeg"`, domyślnie jakość 85) miniatury z dużym zdjęciem zwykle się w tym mieści; rozmiar wersji PNG sprawdź, zanim na niej oprzesz publikację.

## Jedna miniatura na film

```bash
curl -X POST "https://shareglint.com/v1/images?wait=true" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "template": "thumbnail-tutorial",
    "size": "youtube",
    "format": "jpeg",
    "modifications": {
      "title": "Deploy Laravel to a VPS in 10 minutes",
      "tool_name": "Laravel",
      "step_label": "Part 3",
      "level": "Beginner",
      "highlight": "10 minutes",
      "channel": "@shipfast",
      "tool_logo": "https://example.com/laravel.png",
      "screenshot": "https://example.com/terminal.png"
    }
  }'
```

Odpowiedź zawiera `url` pliku. Obrazki (`tool_logo`, `screenshot`, zdjęcie gościa) są pobierane z publicznych adresów w chwili renderowania miniatury; długie tytuły zmniejszają się, żeby zmieścić się w swoim polu, zamiast wychodzić poza obrazek. Te same wartości zwracają ten sam plik za darmo, więc ponowne uruchomienie skryptu publikującego nic nie kosztuje.

## Wgrywanie przez API YouTube

Nasze API tworzy obrazek; wgranie go to jeszcze jedno wywołanie po twojej stronie. Metoda [`thumbnails.set`](https://developers.google.com/youtube/v3/docs/thumbnails/set) z YouTube Data API przyjmuje `image/jpeg` albo `image/png` do 50 MB, wymaga OAuth z zakresem YouTube, np. `youtube.upload`, i kosztuje około 50 jednostek twojego limitu YouTube na wywołanie. Szkic w Node z oficjalnym klientem `googleapis`:

```javascript
import { Readable } from 'node:stream';
import { google } from 'googleapis';

const youtube = google.youtube({ version: 'v3', auth: oauthClient });

const image = await fetch(thumbnailUrl);              // adres z renderu
await youtube.thumbnails.set({
  videoId: 'dQw4w9WgXcQ',
  media: { mimeType: 'image/jpeg', body: Readable.fromWeb(image.body) },
});
```

Uruchom to w tym samym zadaniu zaraz po wgraniu filmu, a film pojawi się od razu z gotową miniaturą.

## Cała seria z arkusza

Przy starszych materiałach — 80 odcinkach podcastu, kursie z 30 lekcji — wpisz do arkusza jeden wiersz na film: `title`, `highlight`, `channel`, `photo` (adres URL), `filename`, np. `ep-042.jpg`, oraz `id` z identyfikatorem filmu na YouTube. Potem:

```bash
curl -X POST "https://shareglint.com/v1/batches" \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "template": "thumbnail-face", "format": "jpeg", "sizes": ["youtube"],
        "csv_url": "https://docs.google.com/spreadsheets/d/…/edit?usp=sharing" }'
```

`GET /v1/batches/{id}` podaje postęp, a po zakończeniu adres każdego wiersza (z jego `id`, gotowy do `thumbnails.set`) i jedno archiwum ZIP. Limit wierszy na zlecenie według planu: Free 50, Starter 500, Pro 1 000, Scale 2 000, Business 5 000. Zmień jeden tytuł i uruchom zlecenie jeszcze raz, a od nowa wyrenderuje się tylko ten wiersz. Strona Bulk w panelu robi to samo z wgranego pliku CSV, z darmowym podglądem pierwszych wierszy.

## Testowanie wariantów

Wbudowana w YouTube funkcja [Test & compare](https://support.google.com/youtube/answer/13861714?hl=pl) porównuje ze sobą do trzech miniatur opublikowanego filmu, w YouTube Studio na komputerze, i zaleca co najmniej 1280×720 dla każdego wariantu. Dzięki szablonowi warianty są tanie: ten sam film z tytułem w formie pytania albo stwierdzenia, z innym wyróżnionym słowem, z jasnym albo ciemnym `theme`, z innym kolorem `accent`. Każdy wariant to jeden render; wyrenderuj trzy, wgraj je do testu i zostaw zwycięzcę. Nie prowadzimy testu ani nie czytamy twoich statystyk — robi to YouTube Studio.

## Projekt, który działa w rozmiarze miniatury

- **Mało słów, duże litery.** Miniaturę często widać w ułamku jej rozmiaru — w wynikach wyszukiwania i na telefonach; 4–6 słów grubym krojem da się przeczytać, całego zdania już nie. Pole `highlight` koloruje jedno albo dwa słowa.
- **Twarze i kontrast.** Szablony z polem `photo` albo `face_photo` wkomponowują portret w układ; wybierz zdjęcie, na którym osoba jest dobrze oświetlona, a tło proste.
- **Zostaw wolny prawy dolny róg.** YouTube wyświetla tam długość filmu.
- **Własne fonty?** Szablony używają krojów zainstalowanych w naszym rendererze (`GET /v1/fonts`); pliku z fontem nie wgrasz. Lista jest krótka — Roboto, Open Sans, Ubuntu i kilka innych — więc jeśli wygląd twojego kanału zależy od konkretnego kroju tytułowego, najpierw sprawdź listę.

## Koszt

Jeden render na miniaturę i rozmiar. Kanał z jednym filmem tygodniowo, jedną miniaturą i dwoma wariantami zużywa około 12 renderów miesięcznie; 300 starszych filmów w jednym rozmiarze to 300 renderów. 100 renderów miesięcznie w planie Free ma znak wodny — w sam raz do wypróbowania szablonów, nie do publikacji. Starter kosztuje $9 miesięcznie za 2 000 renderów bez znaku wodnego ([cennik](https://shareglint.com/pl/pricing)).

## Czego nie robi

- Nie wgrywa niczego na YouTube i nie czyta YouTube Analytics; robi to twój skrypt albo YouTube Studio.
- Nie wybiera klatki z twojego filmu. W polu obrazka użyj wyeksportowanego kadru albo zdjęcia.
- Żadnych twarzy ani scen generowanych przez AI: szablon układa obrazki, które dostarczysz.
- Animacje (GIF/MP4 do 5 s) są dostępne, ale miniatury na YouTube to obrazy statyczne, więc używaj JPEG albo PNG.

## FAQ

### Jaki rozmiar powinna mieć miniatura na YouTube?

Strona pomocy YouTube wymaga proporcji 16:9 i szerokości co najmniej 640 pikseli, jako rozdzielczość podaje 3840×2160 i przyjmuje JPG albo PNG do 2 MB z telefonu lub do 50 MB z komputera. Miniatury Shorts mają proporcje 9:16, podcasty 1:1. Własne miniatury wymagają zweryfikowanego konta.

### W jakich rozmiarach API renderuje miniatury?

Preset youtube to 1280×720, a pliki rastrowe mają dwukrotność rozmiaru szablonu, czyli 2560×1440 — 16:9 i wyraźnie powyżej minimum. Pełne 3840×2160 dostaniesz, zapisując szablon w rozmiarze 1920×1080. Preset story daje 2160×3840 do Shorts, a preset square okładkę podcastu.

### Czy API może wgrać miniaturę na YouTube?

Nie. Zwraca adres obrazka; wgrywa go twój skrypt wywołaniem thumbnails.set z YouTube Data API, które przyjmuje JPEG i PNG do 50 MB i wymaga OAuth z zakresem YouTube.

### Czy mogę zrobić miniatury dla całej playlisty naraz?

Tak. Wyślij zlecenie hurtowe z jednym wierszem na film — tytułem, numerem odcinka, wyróżnionym słowem, adresem zdjęcia gościa — i odbierz wszystkie miniatury oraz ZIP. Wiersze już wyrenderowane z tymi samymi wartościami są darmowe.
