One collection vs Multiple Collections

I have a tourism site and should I have one collection or multiple - what are the pros and cons

Attractions
Hotels
Restaurants
Properties

I will have the ability to search and filter for all of the above

Thank you


Here is my public share link: LINK
(how to access public share link)

Putting all of these in one “Places” collection is a data modeling pattern known as hypernormalization. You get some conveniences out of it, such as the fact that it’s very easy to add new classes of items, e.g. “Bars”, or “Amusement Parks”.

However Webflow’s CMS isn’t a full-blown relational database, and Collection Pages are bound to the underlying Collection.

I’d imagine there are differences between a Restaurant listing ( opening hours, reviews, menus, photos of food… ), and a Hotel listing ( availability calendar, amenities, perhaps suite-type listings ).

Another advantage of separating them is the administration of cross-references. For example, suppose you want the hotels page to list the nearby restaurants. You can multiref from Hotels → Restaurants. If it’s all one Places table, you are doing a multiref from Places → Places and it’s an admin hassle to know if you’re selecting a restaurant or something else.

Small SEO and UX advantage as well, /restaurants/bobs-crab-shack and /hotels/artemis looks a bit better than a generic /places/...

Thanks

I will be using Jetboost.io search and filters again is there pros or cons for using multiple collections

Depends on what exactly you’re trying to build. You should prototype both approaches and see what works best for you and your client. There will be tradeoffs either way.

Each city would have each collection listed in a grid

Response from Jetboost

Well, I guess you can think of it like this. If you have a map, then the map is showing “what?” Locations, right? So you can probably have a “Locations” collection that stores all types of locations. Doesn’t matter whether they are events, restaurants, etc.

Now, for the fields of that collection, you can create a new field to state what “Type” of location it is. This new field can be done in two ways or better said, choosing between 2 different field types. An “Option” field or a “Reference” field. If you choose a reference field, you will then have to create a new collection, which you can name “Location Type.” Inside of that new collection you can enter all the types, such as “Events,” “Restaurants,” “Properties,” etc. If you choose to use an option field, you can name it “Location Type” as well, and you would just add all the same types to it.

Now you can have a filter for “Type” that users can use. They can select whether they want to see locations for Events," “Restaurants,” “Properties,” etc.

You can also have a collection for “Cities.” Then you can reference that “Cities” collection from the “Locations” collection, this way the database and Jetboost knows which locations belong to which cities.

you can only have 1 collection per map

There’s your answer, if you want to use Jetboost’s maps solution, you are limited to one collection per map. Therefore if you want multiple categories of items on the map, you have to hypernormalize your schema.

Alternatively, you could use MapBox directly ( which Jetboost uses ), and merge your collections. More dev work, less monthly. Google Maps does well too.