PostgreSQL to zaawansowany system relacyjnych baz danych, dostępny na zasadach wolnego oprogramowania. Baza implementuje większość standardu SQL 2011.
PostgreSQL zaliczany jest do baz relacyjnych, ale ma też rozszerzenia obiektowe. Baza działa na wielu architekturach sprzętowych i systemach. Procedury można pisać w różnych językach programowania, w tym w klasycznym SQL-u i pgSQL-u, bardzo podobnym do PL/SQL w bazach firmy Oracle. Ponadto można korzystać z Pythona, Perla Tcl, Lua, PHP, Ruby, C, C++, Javy i statycznego R.
PostgreSQL ma zaimplementowaną obsługę wielu typów indeksów, jak B-drzewo, R-drzewo, Hash, GIN czy GiST. Indeksy mogą być wartością kolumny lub kilku kolumn, a także wynikiem funkcji. PostgreSQL obsługuje liczne typy danych, łącznie ze specjalistycznymi, jak zakresowe, geometryczne czy XML z XPath. Nie zabrakło typów konkretnie pod wyszukiwanie pełnotekstowe.
Baza daje także możliwość tworzenia własnych typów i tworzenia większości obiektów bazodanowych. Silnik ma wiele obiektowych rozszerzeń, na przykład umożliwia dziedziczenie typów tablic.