For me, I've considered switching away from supabase because of one major limitation: no transactions in database. Another thing is real time updates and how disconnected they are from the database (no optimistic updates, separate initialization required, different query syntax in the (JS) API, etc)
There's also other minor annoyances like not being able to deploy functions via CLI for self hosted instances and issues with running the latest versions (studio)