Popularity and Interest Level are fields available in the API.
Popularity
This is derived from user interactions with events and is a cumulation of clicks, shares, favorites, link click-throughs, etc. Popularity is maintained within a specific portal, so that in cases where you might have a kids calendar vs a music calendar, they can each have their own popularity. Popularity is typically used for sorting, as well as for populating widgets. When there is no popularity on an event (no engagement), the interest level is used as the secondary sort.
Interest
Interest level is primarily based on the venue where the event is taking place and the source that it comes from. It is a rough approximation of how far someone would travel for that event (high interest would be regional events, and low interest would be local--events at schools and libraries, for example are given very low interest). While not perfect, since there may be an event at a school or library for example that is high interest, it is generally a close approximation. This field is typically used for particular accounts that limit the events they display to only a certain interest level and above (alt weeklies, for example, typically only display events with average interest and above, thus dropping the school and library events).