If it helps, and to add to @yannis' answer, the old xunicode package (back when xelatex was the only UTF8-aware engine) redefines tipa commands to Unicode.
So you can use fontspec to choose whichever fonts are suitable.
xunicode can run under lualatex with one additional code line (see MWE).
Some examples:




Not all fonts have full coverage of the glyphs.
Items in red indicate potential revision of the macro definition might be required.
Some slight typing corrections in the yannis list have been silently made.
Conclusion
IPA symbols are a script in their own right.
For large volumes, direct input (using a dedicated keyboard overlay) would be the most efficient input method.
For using a smaller set of glyphs, named macros would keep the source code readable and easier to maintain compared to using codepoints (e.g., ^^^^0259 = ə), at the expense of typing in the macro names and knowing what the names actually are and mean. Perhaps shortcuts for the more commonly-used ones would help.
Tipa-as-unicode would fall at this smaller end of the spectrum, in terms of usage and convenience.
MWE
\documentclass{article}
\usepackage{xcolor}
\usepackage{fontspec}
\setmainfont{Noto Serif}
\def\XeTeXpicfile{}%so can compile with LuaLatex
\usepackage{xunicode}
%\usepackage{tipa}
\newcommand\fnamea{Noto Serif}
\newcommand\fnameb{Junicode}
\newcommand\fnamec{Linguistics Pro}
\newcommand\fnamed{DejaVu Serif}
\newcommand\fnamee{Gentium Plus}
\newcommand\fnamef{Liberation Serif}
\newcommand\fnameg{CMU Serif}
\newfontfamily\ffonta{\fnamea}
\newfontfamily\ffontb{\fnameb}
\newfontfamily\ffontc{\fnamec}
\newfontfamily\ffontd{\fnamed}
\newfontfamily\ffonte{\fnamee}
\newfontfamily\ffontf{\fnamef}
\newfontfamily\ffontg{\fnameg}
\newcommand\dolist[2]{%1=font command,2=fontname
#1 Tipa Unicode commands using \fbox{{\large #2}} font.
First item is the Tipa macro, second item is the Unicode character directly.
\AA{Å}
\AE{Æ}
\DH{Ð}
\O{Ø}
\Thorn{Þ}
\TH{Þ}
\ss{ß}
\aa{å}
\ae{æ}
\dh{ð}
\o{ø}
\textthorn{þ}
\textthornvari{þ}
\textthornvarii{þ}
\textthornvariii{þ}
\textthornvariv{þ}
\th{þ}
\DJ{Đ}
\dj{đ}
\textcrd{đ}
\textHbar{Ħ}
\textcrh{ħ}
\texthbar{ħ}
\i{ı}
\j{ȷ}
\IJ{IJ}
\ij{ij}
\textkra{ĸ}
\L{Ł}
\textbarl{ł}
\l{ł}
\NG{Ŋ}
\ng{ŋ}
\OE{Œ}
\oe{œ}
\textTbar{Ŧ}
\textTstroke{Ŧ}
\texttbar{ŧ}
\texttstroke{ŧ}
\textcrb{ƀ}
\textBhook{Ɓ}
\textOopen{Ɔ}
\textChook{Ƈ}
\textchook{ƈ}
\texthtc{ƈ}
\textDafrican{Ɖ}
\textDhook{Ɗ}
\textEreversed{Ǝ}
\textEopen{Ɛ}
\textFhook{Ƒ}
\textflorin{ƒ}
\textGammaafrican{Ɣ}
\texthvlig{ƕ}
\hv{ƕ}
\textIotaafrican{Ɩ}
\textKhook{Ƙ}
\textkhook{ƙ}
\texthtk{ƙ}
\textcrlambda{ƛ}
\textNhookleft{Ɲ}
\Ohorn{Ơ}
\ohorn{ơ}
\textPhook{Ƥ}
\textphook{ƥ}
\texthtp{ƥ}
\textEsh{Ʃ}
\ESH{Ʃ}
\textlooptoprevesh{ƪ}
\textcolor{red}{\textpalhookbelow{t}}{ƫ} %command takes argument
\textThook{Ƭ}
\textthook{ƭ}
\texthtt{ƭ}
\textTretroflexhook{Ʈ}
\Uhorn{Ư}
\uhorn{ư}
\textVhook{Ʋ}
\textYhook{Ƴ}
\textyhook{ƴ}
\textcolor{red}{\textEzh}{Ʒ} %Ǯǯ: misaligned char?
\texteturned{ǝ}
\textturna{ɐ}
\textscripta{ɑ}
\textturnscripta{ɒ}
\textbhook{ɓ}
\texthtb{ɓ}
\textoopen{ɔ}
\textopeno{ɔ}
\textctc{ɕ}
\textdtail{ɖ}
\textrtaild{ɖ}
\textdhook{ɗ}
\texthtd{ɗ}
\textreve{ɘ}
\textschwa{ə}
\textrhookschwa{ɚ}
\texteopen{ɛ}
\textepsilon{ɛ}
\textrevepsilon{ɜ}
\textrhookrevepsilon{ɝ}
\textcloserevepsilon{ɞ}
\textbardotlessj{ɟ}
\texthtg{ɠ}
\textscriptg{ɡ}
\textscg{ɢ}
\textgammalatinsmall{ɣ}
\textcolor{red}{\textgamma}{ɣ} %
\textramshorns{ɤ}
\textturnh{ɥ}
\texthth{ɦ}
\texththeng{ɧ}
\textbari{ɨ}
\textiotalatin{ɩ}
\textiota{ɩ}
\textsci{ɪ}
\textltilde{ɫ}
\textbeltl{ɬ}
\textrtaill{ɭ}
\textlyoghlig{ɮ}
\textturnm{ɯ}
\textturnmrleg{ɰ}
\textltailm{ɱ}
\textltailn{ɲ}
\textnhookleft{ɲ}
\textrtailn{ɳ}
\textscn{ɴ}
\textbaro{ɵ}
\textscoelig{ɶ}
\textcloseomega{ɷ}
\textphi{ɸ}
\textturnr{ɹ}
\textturnlonglegr{ɺ}
\textturnrrtail{ɻ}
\textlonglegr{ɼ}
\textrtailr{ɽ}
\textfishhookr{ɾ}
\textlhti{ɿ}
\textscr{ʀ}
\textinvscr{ʁ}
\textrtails{ʂ}
\textesh{ʃ}
\texthtbardotlessj{ʄ}
\textcolor{red}{\textraisevibyi}{ʅ} %ʅ
\textctesh{ʆ}
\textturnt{ʇ}
\textrtailt{ʈ}
\texttretroflexhook{ʈ}
\textbaru{ʉ}
\textupsilon{ʋ}
\textscriptv{ʋ}
\textvhook{ʋ}
\textturnv{ʌ}
\textturnw{ʍ}
\textturny{ʎ}
\textscy{ʏ}
\textrtailz{ʐ}
\textctz{ʑ}
\textezh{ʒ}
\textyogh{ʒ}
\textctyogh{ʓ}
\textglotstop{ʔ}
\textrevglotstop{ʕ}
\textinvglotstop{ʖ}
\textstretchc{ʗ}
\textbullseye{ʘ}
\textscb{ʙ}
\textcloseepsilon{ʚ}
\texthtscg{ʛ}
\textsch{ʜ}
\textctj{ʝ}
\textturnk{ʞ}
\textscl{ʟ}
\texthtq{ʠ}
\textbarglotstop{ʡ}
\textbarrevglotstop{ʢ}
\textdzlig{ʣ}
\textdyoghlig{ʤ}
\textdctzlig{ʥ}
\texttslig{ʦ}
\textteshlig{ʧ}
\texttesh{ʧ}
\texttctclig{ʨ}
\textprimstress{ˈ}
\textlengthmark{ː}
\textsc{Shortcuts}: \textipa{["pI\*Di]}
\textipa{[\!b] [\:r] [\;B]}
\textsc{Input Methods}:
[\textsecstress\textepsilon kspl\textschwa\textprimstress ne\textsci\textesh\textschwa n]
:
\textipa{[""Ekspl@"neIS@n]}
v\textturnv v w\textsca w y\textturny y [\textesh]
:
\textipa{v2v w\textsca w yLy [S]}
[\textipa{S}]
:
\textipa{[S]}
\par
\vspace{3ex}
\hrule
\vspace{4ex}
}
\begin{document}
\dolist{\ffonta}{\fnamea}
\dolist{\ffontb}{\fnameb}
\dolist{\ffontc}{\fnamec}
\dolist{\ffontd}{\fnamed}
\dolist{\ffonte}{\fnamee}
\dolist{\ffontf}{\fnamef}
\dolist{\ffontg}{\fnameg}
\end{document}
tipabut I am on LuaLaTeX and have never not-found any symbol in the unicode. The question on non unicode symbols intipawould be answered by its documentation for sure.tipaspecifically and whether anyone has chosen to use it instead of Unicode on the basis of its technical capabilities. I've edited my question to better reflect this.tipalack symbols. Buttipalacks way more -- it doesn't even cover the IPA itself, even though that was the reasontipawas created. But with XeLaTeX/LuaLaTeX, you can always find some font out there that has the extra symbols you need (I do this when I transcribe things with the Norwegian phonetic alphabet, which isn't included by Unicode yet). Doing that is much harder or impossible with LaTeX/tipa.tipamanual is a great resource, but it makes no mention of Unicode, let alone provide corresponding Unicode codepoints for each symbol (it was last updated in 2004, so this isn't too surprising). I know thattipadoes contain some non-Unicode symbols, but I'm more concerned with whether there aretipasymbols that users have actually needed and haven't been able to find in any Unicode font.tipais used: (1) Inertia vel sim. I'm lucky that I started using TeX when XeTeX was fairly mature (in 2012). But if I started in 2002, I would probably be atipauser today. (2). People want to use LaTeX. I sometimes usetipa, and the only reason is that I am writing a document that I wish to compile with LaTeX. LaTeX has some advantages over XeLaTeX (e.g.microtype), but LuaLaTeX will eventually close that gap.