Why does Apple recommend to use structs by default?

There isn't any implicit ARC overhead for structs today. If they contain ARC-managed fields, then copying the struct will retain those fields, but the struct itself does not add any implicit memory management overhead. indirect would more than likely remain something you have to ask for explicitly.