Tag Archives: Advanced Search

How to find the most popular songs to dance to

The core mission of music4dance.net is to help you find music to dance to, whether you’re a ballroom dancer, social dancer, or really any kind of dancer. Sometimes I look at the site and say, “This could be better.” Or “Here’s a place that I’ve wanted to improve for a while but couldn’t figure out how; maybe I should try something different.” I had an “aha” moment when I was going through the site for my annual Holiday Music post. I’ve been frustrated that many of the lists of songs on music4dance.net default to some nearly random order that tended to put songs on top that only one or two people had voted for. In the Holiday Music catalog, if you choose a specific dance (like Foxtrot), the list is sorted by the number of votes for that dance. But that wasn’t true of the main list, and there wasn’t an obvious way to sort that list by dance votes.

So I took a step back to think about the general problem of getting the songs with the most dance votes to the top of lists and search results and started digging into the corner cases, which is generally where I get stuck on this kind of problem. For song sorting, I was particularly worried about an issue that a customer brought up when I first implemented the general search like google feature that enabled full-text search. In that case, I was sorting by most recent by default, and when the customer tried to do a full-text search, the song he was looking for ended up on the second page of results because there were a bunch of songs that matched his search less well but had been added more recently.

After thinking about this for a while and looking through search history, I concluded that there are two main ways people search for songs to dance to on music4dance.net. The most common search is for a specific song or artist, in which case you want the song you’re searching for to end up as close to the top of the list as possible, whether or not it is highly rated. The other way is to build lists to browse or create playlists from. In these cases, having the most popular songs at the top makes sense (unless you’ve specified something else like tempo).

Given the above, I’m more explicitly handling the case where you don’t specify a sort order as a special “default” case. If you search for specific text, I assume that’s the most important part of your search, and I sort by most relevant to the text part of the search. This part should take care of the customer I  mentioned above and folks doing that kind of search. In all other cases, I’ll sort by dance votes. You can, of course, always use the Advanced Search page to specify a sort order to override the default.

One of the reasons that I didn’t do this a long time ago is that there are some other corner cases. The biggest one is that there is no way in the underlying search engine to sort on the sum of the votes for different dances. So I can sort on votes for Rumba or even votes on Rumba, then votes for Cha Cha, but I can’t sort by the sum of the votes for Rumba and Cha Cha or even on the most total votes. I still haven’t fully solved this problem, but I have reduced it to a corner case that I believe is a better compromise than the random sort I started with.

I added a new sortable field in the database representing the sum of all dance votes on each song. With the new field, when looking at the default song list you see when you go to the Song Library, you’ll see the most popular songs on the first page. That also helps pages like the main Holiday Dance Music page, where you’ll also see the most popular songs first. The dance-specific pages were already sorted by dance votes for the Holiday, Broadway, and Halloween pages but not for the main dance lists (e.g., East Coast Swing Songs). That’s now fixed.

Unfortunately, in cases where you search for multiple dance styles, I can’t sort by the sum of the votes of those styles. Instead, I sort by each dance style vote in the order you specified them. So, if you search for all songs with Rumba, Bolero, and Cha Cha votes, you’ll get a list starting with the songs with the most votes for Rumba, then Bolero, and finally by Cha Cha votes. It’s not a perfect solution, but I think it’s still an improvement over the previous random ordering in these cases. What do you think?

Following the line of reasoning that started this post, I’m sure there are things that aren’t quite working for many of you when searching on music4dance. Please let me know. Sometimes, I just need to see the problem to come up with a fix. That’s especially true if you’re using the site in a way I didn’t expect, so even if everything is working smoothly, I’d love to hear how it’s helping you.

In addition to the specific ask above, I’m always happy to hear ideas about this post or the site by commenting below or using other feedback mechanisms listed here. And if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

I’m a ballroom dancer. Can I find practice songs that are at competition tempo? (Revisited)

This is an update to a post I wrote in 2015. Music4Dance has come a long way since then, so the answer to the title question is completely different than it was nearly a decade ago.  In fact, the top-level answer is so simple I was tempted to just put a note at the top of the old post, but I had a few other things to say, so I went this route instead.

So here it is: Go to the Ballroom page and check it out.  The page is accessible from the “Music” menu.

A table showing the tempi of American Smooth dances

Clicking on the round title takes you to a page with more information about that style.  For the American styles, that includes other dances that aren’t part of a round.

The Competition Ballroom page has sections for American Smooth, American Rhythm, International Standard, and International Latin. Each section contains basic information about the dances, including tempo in measures per minute and beats per minute1 for both of the major organizations that run Ballroom Dance Competitions.

Clicking on any tempo listings will take you to a list of songs tagged with that dance style and set to within that tempo range.  Note that I’m not currently also filtering on the American or International tag on the dance. This is for two reasons. First, the underlying database, which has a lot of excellent qualities, won’t let me do that particular search.  Second, because many of my sources don’t routinely specify the style, we’d be leaving out many great songs if we filtered that tightly.

And that’s it!


Here are some additional things that you might want to try that are adjacent to the simple answer:

If you disagree with the tempo listings and believe they’re wrong, please let me know, and if possible, cite your sources.  Tempo recommendations change occasionally, and I’m not always on top of the changes – the NDCA made some substantial changes a couple of years ago, and it took me over a year to notice.

If you want to find songs that are slower or faster than the listed tempos (e.g., if you want a slow set and a fast set), you can go through the process above and then click “change search” on the results. This will take you to the advanced search page, where you can change the tempo range without changing anything else and re-run the search.

If you have a premium subscription you can export the results of any of the above searches to Spotify.

If you would like to have this kind of support for other styles of dance, let me know where I can find reliable tempo information, and I’ll look into adding them. Some similar functionality is available on all of the dances we list, but the full tables only make sense if we have the kind of information that the ballroom dance organizations give for their competitions.

As always, I’m very interested in your feedback, so please share any thoughts and ideas about this post or the site by commenting below or using other feedback mechanisms listed here. In addition, if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.


  1. Before you ask, I’m leading with “Measures Per Minute” rather than “Beats Per Minute,” as that’s how NDCA and DanceSport list tempo in their rules. If anyone in the ballroom world knows why that is, please let me know. ↩︎

New Feature: Improved Text Searching

I’ve always been a bit dissatisfied with how I set up the Artist field in music4dance.  A free text field for the artist generally works, but it doesn’t capture everything I’d like.  But since the core functionality of music4dance is to associate songs with dance styles, keeping the rest of the system simple is a sound decision, and I stand by it.

However, something comes up every few years that makes me want to at least incrementally improve the text search part of the system.  When Prince left us, I broke down and created artist pages based on the text of the artist field.  This was a significant improvement, and I returned to that when writing my DWTS Taylor Swift/Whitney Houston post.  In that post, I listed a few things that I thought could be improved with artist search and then let things rattle around in my brain for a few months.

Last week, I decided to spend a little while seeing what I could do to make a worthwhile improvement in a short time.  What came out was a pair of changes.  The more visible change is an addition to the advanced search page. 

I’ve added some additional controls to explicitly search each of the three primary text fields in the music4dance database – Title, Artist, and Albums.  This enables a more direct way to get to all of the songs by an artist.  It also allows the inverse.  While adding the artist page let you get to all of the songs by “Prince,” it didn’t let you find all of the songs with “Prince” in the Title without also seeing the Prince and Prince Royce songs or, for that matter, songs with Prince in album names.  That is, if you can find one song with Prince as the artist you can click on the link to get to the artist page.

One side effect of this change is that if you search for Prince in the artist field, you also get Prince Royce songs, although they end up at the end of the list.  While that’s not great in the case of Prince, you now have a fast way to get to a link that will send you to the Prince artist page, which does only list Prince songs.  The good part of this quirk is that if you’re looking for songs by Benny Goodman, you’ll get a list containing not just songs with exactly “Benny Goodman” in the artist field.  You also get songs by “Benny Goodman Sextet,” “Benny Goodman Quartet,” “Benny Goodman and Charlie Christian,” “Peggy Lee and Benny Goodman,” etc.

The other more subtle improvement is that I dug into how the underlying database ranks the results of a search.  With my new understanding, I decided to weight the Title and Artist fields considerably higher than the other fields, including the Albums fields.  This helps more than one would think because I grab as many albums as I can associate with a song, and there may be a word in several of those album titles that doesn’t show up in the title or artist. Since the database uses the frequency of a word in the text as part of the weighting, those songs will show up high in the ranking, while it’s not obvious why that song showed up at all since you have to click through to the song details page to see the album names.

Give it a whirl and tell me what you think.  I will probably still do an artist index and possibly figure out a way to do some cleaning up of the database.  There are still songs where the title contains a featured artist, and that artist isn’t represented in the artist field at all, for instance.

As always, I’m very interested in your feedback, so please share any thoughts and ideas about this post or the site by commenting below or using other feedback mechanisms listed here. In addition, if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

What are your favorite Prince songs for partner dancing?

Update 2024: The content of the post is still generally accurate. There is a more recent post that outlines a new feature that adds yet another way to narrow down songs that have “Prince” in the artist’s name. New Feature: Improved Text Searching I, like many, am mourning and listening to Prince’s music. Over and…

Keep reading

Ballroom Dancing to Whitney Houston and Taylor Swift

The recent Dancing With the Stars episodes featuring Whitney Houston and Taylor Swift’s music caused a significant spike in traffic at music4dance.net, with dancers looking for music by those artists. I find this exciting for many reasons.  There’s the obvious reason that more traffic means more people showing interest in this project.  It also reinforces…

Keep reading

We’d like to dance a “real” partner dance as the first dance at our wedding (Part II: We already chose our dance)

Last time I wrote about how music4dance can help you find a dance to match the song you’d like to dance to for your first dance (or other wedding dances). This time, I’ll cover how the site can help you find a song if you already know what dance style you want to dance. Before I dig into that, I’d like to repeat that your local dance studio and your wedding DJ are both excellent sources of ideas.

Since I first wrote about this idea early a decade ago, I’ve made some improvements to the site. The easiest way to find wedding songs that match your dance is to go to the wedding music page (Music -> Wedding on the main menu). There you’ll find a table of dance styles and types of wedding dance. The cells in that table have a number that represents the number of songs we have cataloged for that dance style and also tagged with the type of wedding dance. Click on the number to get to a list of songs where you can play samples and find the full version of the song on Spotify, Apple Music, or Amazon.

The wedding music page is just a shortcut to using the advanced search tool. If you want to search for something unavailable in the wedding dance table, you can do the same type of search using the tool. For instance, I haven’t added Mother/Daughter songs to the table as of this writing. But a few people have tagged songs as Mother/Daughter. So you could go to the advanced search tool, include the tag “Mother Daughter,” optionally choose a dance, and see what comes up.

In addition, when you do an advanced search, you can find the search again on your search page. And if you’re a premium subscriber, you can export results as a Spotify playlist to listen through the songs at your convenience.

I hope this helped. And if you’ve got suggestions for other wedding-related tags, please consider becoming part of the music4dance community and adding your wedding songs to the catalog with whatever tags make sense to you – they’ll be helpful to someone else in the future.

As always, I’m very interested in your feedback, so please share any thoughts and ideas about this post or the site by commenting below or using other feedback mechanisms listed here. In addition, if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

New Feature: Searching for only the songs that someone has voted for

Arne pointed out the other day that it would be useful to be able to build a playlist for just the songs that he had voted for dancing Cha Cha. I scratched my head a bit because I thought this was already possible. I even added a feature last year to make it easier to see who has voted on dance styles for songs so that you could look for other songs that a user voted on.

I should have noticed that you can search for a dance and that someone has tagged it in some way. But you can’t specify that someone has voted for a particular dance. They might have voted against the dance or just tagged the song with another kind of tag, and someone else voted for the song, so it still shows up in the search.

This wasn’t too bad when the catalog was relatively small and when you’re just looking at search results to find ideas for songs to dance to. 

However, things have gotten worse over time for a couple of reasons.

In Arne’s case, he wanted to export a playlist to Spotify of songs that he explicitly voted for Cha Cha. Using advanced search, he can choose Cha Cha then search “By User” and “Include all songs arne has tagged.” This search resulted in 50 songs, only 26 of which he had voted for Cha Cha. On that list were songs that he had explicitly voted against and a number that he had just voted for other dances.

The new feature is to add an option to the “By User” section of advanced search to “Include all songs [user] has voted for [dance].” In this case, choosing “Include all songs arne has voted for Cha Cha” yields the correct 26 songs he voted for.

The other case this feature solves is that as the catalog grows, there is more variety in how people vote on songs, so there is more noise. For instance, searching for the songs that DWTS (Dancing With the Stars) has tagged that someone has also voted for Cha Cha results in 305 songs, while searching specifically for the songs that DWTS has voted for Cha Cha results in only 130 songs.

Thanks, Arne, for pointing this out and helping to make music4dance more useful for everyone.

As always, I’m very interested in your feedback, so please share any thoughts and ideas about this post or the site by commenting below or using other feedback mechanisms listed here. In addition, if you enjoy the site or the blog (or both), please consider contributing in whatever way makes sense for you.

P.S. The DWTS list is a list I maintain, and any mistakes in are mine. I use a semi-automated method of scraping the published information about the dances each week to populate the information in muic4dance. DWTS, in particular, is challenging because the music they dance to is generally covers performed by their house bands, so they don’t always match the tempo of the available recordings. Please let me know about any mistakes you see.

New Feature: Saving and Sharing Searches

Searching for music to dance to is what music4dance is all about. 

I’ve been adding features such as Filter by Song Length, General Search, and Searching for a song from Spotify or iTunes to improve your ability to do just that. 

Another thing that I hope music4dance will be used for is to share those songs with other dancers.

There are two features that I haven’t blogged about recently that have suffered from some bit rot over the years. Since I’ve got them up and running again I want to increase awareness about them and get your feedback as to how useful these features are to you.

The first is Saving Searches. Whenever you do a search that is nontrivial, we save the search in a list that you can access through your account menu. See the help for more details.

The other is the magic of URLs. You can copy the link from the address bar and share it with other dancers. This is true of everything from the simplest searches you do from the top menu bar to the most complex searches you create using the advanced search tool. Or you can embed the link in a blog post, which is what I do regularly here. It’s one of those wonderful web features that should always just work, but often is not correctly implemented. It’s a bit of a pet peeve of mine when this doesn’t work for websites, so I try to make it work for music4dance.

And there is a third feature, which I’ve implemented more recently. With a premium subscription, you can create a Spotify playlist from a search and share the results.

I’m very interested in feedback, about this set of features. I can think of several ways I might want to improve the saving and sharing of searches, but I hesitate to invest much more into this until I hear from you. For instance, would you like to be able to show your favorite searches on your profile page? Or would you like to refine searches even more? Or would you be interested in seeing what others are searching for?

Besides the specific feedback request above, I’m always interested in your more general feedback, so please share any thoughts and ideas you have about this post or the site by commenting below or using other feedback mechanisms listed here. In addition, if you enjoy the site or the blog (or both), please consider contributing in whatever way that makes sense for you.

Ask music4dance: Should you add a Single Swing Dance category?

Arne had another great question (paraphrased): I see Single Swing being danced a lot these days.  Should music4dance add another swing category? Is Single Swing a local thing, national, really new? Do people still dance triple-step Swing?

Here is a slightly cleaned-up version of my response:

East Coast Swing (the triple step variety) is a competition dance, so it’s still being danced regularly in ballroom environments. But the Lindy revival of the ’90s seems to have dominated the social swing scene from what I can tell.

In the ballroom community that I learned to dance in during the ’90s, they used the term East Coast Swing to refer to the competition dance, which was definitely a triple-swing. But if one was dancing socially to music too fast to comfortable dance triple swing, you would revert to something they were calling Single Swing or East Coast Single Swing or some variation on that.

I fell down a rabbit hole, trying to see if my recollection had anything to do with current thinking on this. This video shows a “Single Swing” basic that is exactly what I think of as Single Swing. Duet Dance and DanceTime both have descriptions of various kinds of swings. They seem to agree that what I think of as Single Swing could also be reasonably called “The Jitterbug” (which I had thought was just a different name for Lindy Hop). As with any of this stuff, the history is so twisted up that there probably isn’t a correct answer, or if there is, it would require a historian to dig up.

Even without adding a new dance, you should be able to find some good ideas for Single Swings by searching for generic Swing in the tempo range between 140 and 184 MPM. When I first responded to Arne, I had broken that feature, but it’s now up and running again. So you can go to the Advanced Search Page, choose Swing in the dances section, and type in the tempo range you’d like to filter on. 

I am interested in incorporating Single Swing into the music4dance catalog. Should I do this as Jitterbug or Single Swing or by adding single and triple tags to East Coast Swing? I’d love to get others’ thoughts on this so please feel free to send feedback.

Asking to add a new dance style to the catalog is certainly in the top ten questions I’ve been getting. So I’ve been working on streamlining how I manage dance information to make that easier. Most of this work has been under the hood (although the bug mentioned above was one side effect). One of the more visible aspects of this is a small redesign of the Dance Styles page to simplify it a bit and hopefully make it a little more usable.

As always, I’m very interested in your feedback, so please share any thoughts and ideas you have about this post or the site by commenting below or using other feedback mechanisms listed here. In addition, if you enjoy the site or the blog (or both), please consider contributing in whatever way that makes sense for you.

New Feature: More ways to see what’s going on at music4dance

One of my goals for music4dance is to build a system that people can use to share their knowledge of partner dance music with others.  I probably spent too much time early on in this project building bots and scrapers to seed the catalog with content and neglected the community aspect of the site.  So I am now trying to focus on more community-building features.  This includes everything from simplifying the system so that it’s easier to add new styles of dance to making it easier for members to add new songs to making it possible for members to see who else likes to dance to a song.

Following on to the feature where I added the ability to see the voting history on a song on the details page, I’ve added a couple of small feature-lets.

Now,  when you filter music on a user you will see a column  with that user’s changes:

If you know a user’s username, you can filter by a user in the advanced search page by typing the username and choosing what you want to filter on (likes, tags, etc.).  Or you can go down the path described in a previous post and click on a username anywhere that one shows up.  That will take you to a page that will let you filter on all the songs that the user has tagged or all the songs that that user has added to favorites among other things. Eventually, I’d like to have that page contain additional user profile information.

The other fun thing you can do is on the new music page.  The song list on that page has a similar column to the one above that shows latest change to each song and who made it.  That’s a way to find users that are actively adding songs and seeing what they’re up to.

And finally, when you’re exploring these features if you find a search that you want to share with others, you can just copy the URL and send it to a friend. That’s what I do with links back to the music4dance site with these blogs – so it’s not a new feature, but it is becoming more useful with the other community features that I’m building.

As always, I welcome feedback on not just the feature, but the site in general.  And if you find the site useful, please consider contributing in any way that you can.

What is the difference between adding a song to Favorites and voting on a  Song’s Danceability?

From discussions with dancers navigating the music4dance site and observing people’s usage of the site I realize that I still haven’t made it easy to understand the nuances of a couple of important features.  I’m trying to default to simplifying the site wherever possible. But enough people are using both of these features that I don’t feel good about getting rid of either of them.  So I made some changes in terminology and behavior and I’m interested to know if this makes more sense.

Here are the two features at issue:

  1. The concept of voting on the danceability of a song to a particular dance style.  For instance – I love dancing Cha Cha to “Let’s Get Loud” by Jennifer Lopez, so I’ll vote on that.
  2. The concept of adding songs to a favorites or blocked list.  Up until this change I labelled the favorites/blocked list as like/dislike, which I now believe is part of the source of confusion.

It’s important to the music4dance community that people vote on the danceability of a song to dance styles – this is what helps build and refine the catalog that is the core of the site and the main reason that people visit it.

It’s also useful to be able to add songs to a favorites list so that you can filter on that for future searches.   And frankly, blocking a song that you are just sick of is kind of nice as well.

The two concepts are almost completely separate in how they would be used.  But they are too easily confused.  I hope that moving from the like/dislike nomenclature to favorites/blocked list will make things less confusing.

Since I feel the voting concept is more useful to the community, I’ve also done some things to make that more discoverable.  The most recent of these is that when you click on the heart (add to favorites) button in the main song lists, rather than just toggling through favorites/blocked/neutral, it will bring up a modal that will let you explicitly choose one of those options as well as quickly vote on any of the dance styles already associated with the song.

I’ve also added a voting button to dance info modal that is available by clicking on the dance voting results button.

As I noted at the beginning, this is something that I’ve been struggling with for some time (check out this post from 2016) and hope I’ve improved it a bit.  But I’m sure there are other things I can do to make this better, so please send me any of your ideas and let me know if you think the latest change works better (or worse) for you.

And, as always, I’m open to feedback about the feature discussed here as well as the site overall.


Music4dance could use your help:  Please take a look the contribute page:  This lists a bunch of ways to contribute from purchasing premium memberships to voting on songs to sharing with your friends and a bunch of things in between.

Ask Music4Dance: How do I find a “Pop Rock” song to dance a Slow Foxtrot to?

This is another question that I’ve seen a bunch of variations on over the years.  It’s one of the reasons that I started music4dance.  I love Big Band music and grew up playing Basie and Goodman in Jazz bands.  And my dad was a big fan of Buddy Rich.  On top of that Foxtrot and Swing co-evolved with this kind of music, so there is no problem finding plenty of music of that style to dance to.

But I’m also pretty eclectic in my musical tastes and some of the most fun I’ve had as a dancer is choreographing an exhibition dance to music that wasn’t written to be danced to – or at least not a traditional ballroom style dance.  There are obviously limits to this, but you see it all the time on shows like Dancing With the Stars and So You Think You Can Dance.

When I received a variation on this question again recently, I checked and realized that in my big rewrite of the site, I had broken the easiest way to do this kind of search.  This is now fixed,  so you can go to the info page for the dance style you’re interested in by choosing “Dances” from the Music menu. Pick the dance style you’re interested in (in this case Slow Foxtrot). Scroll down to the bottom of the page and you’ll see a tags section.  This is a tag cloud that includes all of the tags (other than dance style tags) that people have associated with songs that someone has also tagged as danceable to Slow Foxtrot.  From there you can explore all the unusual songs and musical styles that someone at some point has attempted to dance the Slow Foxtrot to.

I have to admit, going through some of these, that there are plenty that are a stretch – even with a choreographed set piece.  But still a lot of fun to think about.  If you go down this road and find things that stretch your ability to imagine dancing a particular style to and feel that they’re a mistake rather than a fun (but out there) variation, please feel free to vote them down.  Remember all of this content is crowd-sourced, so you’ve got a vote if you choose to use it.

One thing that I realized as I was writing this is that there isn’t an easy way to go the other direction.  You can use Advanced Search or the main Tag Cloud to list all of the songs associated with any tag.  But that doesn’t give you a direct list of all of the dance styles, you have to scroll through all the songs and figure that out yourself.  Let me know if that would be interesting to you and I’ll increase the priority of that feature. 

And as always I love to hear from you – so please send me feedback about the site or with questions about this post.  I may even feature your question in a future post.

Quick Tip:

If you want to be able to listen to a Spotify Playlist of all of the songs that you find in a search like the one above (or any other search on the site), you can do so by signing up for a premium subscription. I took the liberty of generating a playlist for the example above here in case you want to check it out – while you’re on Spotify, please “like” the music4dance account and any of the other playlists that you enjoy.