> Number 1 was social.
This is what I liked while working in HP. We had a canteen where pretty much everybody went. You could buy a number of simple cheaper meals, a fancy expensive meal, or bring your own thing. Everybody could still sit together.
Yes, I think there is a different dynamic when your company scale runs to "I work on campus". In smaller offices, particularly in dense cities or "business parks", I think it's more common to go to the restaurants nearby. Those are really not open to people bringing food.
Both of these match my experience. When I was living off the wages of a young intern, I was working or learning almost every waking hour, and sleeping on a sheet on the floor because I didn't own furniture. But, whenever he group would go out to lunch, I'd go, for the socialization -- it was very consciously the only thing other than rent&utilities that I spent money on. (Fortunately, we had some amazing strip mall restaurants nearby that weren't too expensive.) When the group didn't go to lunch, I'd usually get by with whatever food I could scavenge, because I was so busy, and felt like I had to always be in the office. I hadn't yet even tried to figure out how to make and bring a lunch.
Number 3 might be exercise. If you live in a cold weather city, you can't eat outside all year (i.e. bringing lunch and walk to a park and eating). Walking to and from lunch might be 3,000 steps.
Number 1 was social. People went out for lunch in groups, and it was an "enforced" break in the day. It's a cultural issue that can be hard to replicate for "lunch bringers" in some places. Not so fun to eat alone in a drab lunch room if your friends and peers are down the street having pizza, I guess.
Number 2 was time, or at least the perception of time. Tech people (in my context) tend to work long hours and whether you are trying to maintain a social life or bring up a couple of kids, once you add that to work hours there isn't a ton left. More than one person I know had commented that they didn't find the time to make and bring lunches that didn't leave them feeling left out. It's easy to bring a crappy sandwich, harder to bring something you really enjoy. At least for them.