All queries are made directly to your Postgres or MySQL database, so those systems define the limits. We never store your row data. We've had users running Plato with 100M+ rows.
But there must be a limit to how many rows you can display on screen efficiently, right?
Oh, yes. We load pages of 50 rows at a time, with lazy scrolling that loads more on demand. If you keep scrolling to load dozens of pages, sometimes perf can suffer, but we don't see that to be a common usage pattern. Most users use our query controls to find what they need rather than scrolling.