Low cost of query result in JSON? Version: PostgreSQL 10.3

PostgreSQL supports outputting JSON results. This seems to be a golden match for my application demands.

Now, before turning my application code upside down for benchmarks and tests, I did some queries with some EXPLAIN ANALYZE and almost didn't cost anything extra.

Simple example:

explain analyze
    select id, name, phonenumber, email 
    from contacts
        order by name
        limit 27
        offset 2;
                       QUERY PLAN
══════════════════════════════════════════════════════════════
 Limit  (cost=62.61..62.68 rows=27 width=61) \
        (actual time=0.223..0.226 rows=27 loops=1)...


Complete explain for the plain query here.

explain analyze
    select json_agg(contacts) as contacts
    from(
        select id, name, phonenumber, email 
            from contacts
                order by name
                limit 27
                offset 2
        ) as contacts;
                       QUERY PLAN
══════════════════════════════════════════════════════════════
 Aggregate  (cost=63.02..63.03 rows=1 width=32) \
            (actual time=0.272..0.272 rows=1 loops=1)...


Complete explain for the JSON query here.

I'm quite new in this (SQL performance) and it seems too good to be true. Are the following conclusions correct?:


Looking to the total execution time, the impact to output JSON is relatively low for the given example
I found that the "excluded" time for JSON aggregation is direct proportional to the size of the result set. (By increasing the limit option). However, the same proportional consequence will be on the client side if the result set will be parsed there.
With more complex queries like joins, the relative (%) overhead for JSON aggregation will be lower.
with databases the disk accesses are the slow bits, converting to JSON instead of ASCII (or postgresql wire format) does not cost much compared
to all the disk activity.