Cele stawiane przed językiem przez jego twórców są następujące: YAML ma być czytelny dla człowieka. YAML ma realizować struktury danych wbudowane w języki programowania. Dokumenty YAML mają być przenośne pomiędzy językami programowania. YAML ma być przyjazny dla typowych narzędzi do przetwarzania tekstu. Dokument YAML ma być przetwarzany przez narzędzia w pojedynczym przejściu. YAML ma mieć dużą siłę wyrazu i być łatwo rozszerzalny. YAML ma być prosty w użyciu.

Z powyższych powodów, jak utrzymują twórcy YAML-a, język ten nadaje się dobrze do zapisu konfiguracji systemowej, zapisywania logów, do wymiany komunikatów między procesami, wymiany danych między różnymi językami programowania, do trwałego zapisu obiektów () oraz debuggowania złożonych struktur danych.

Jak zauważają autorzy raportu porównującego różne języki zapisu danych, „czytelność YAML-a jest tak duża, że główna strona poświęcona językowi sama jest napisana w YAML-u”.

Przykładowy dokument

receipt: Oz-Ware Purchase Invoice date: 2007-08-06 customer: given: Dorothy family: Gale

items: - part_no: A4786 descrip: Water Bucket (Filled) price: 1.47 quantity: 4

- part_no: E1628 descrip: High Heeled "Ruby" Slippers size: 8 price: 100.27 quantity: 1

bill-to: &id001 street: | 123 Tornado Alley Suite 16 city: East Centerville state: KS