Tag Archives: Advanced Search

What if I want to find just Cha Chas tagged as American Style?

Or one of the many variations, such as Slow Foxtrots labeled as “Traditional,” or Boleros labeled as “fast”?

Queries like the above have always been possible, but with a very major caveat. Up until now, you could search on Cha Cha dance and “American” style. But what that did was find all songs that had a net Cha Cha vote of at least one and a tag on any dance of “American” style. So if someone voted on a song as Rumba and tagged the Rumba as American, then someone else voted for the song as Cha Cha, searching on Cha Cha and American would include that song.

This behavior was particularly troublesome if you wanted to do something like search for fast Salsas, because you’d end up with songs that are fast Rumbas or Cha Chas, but slow Salsas, which is precisely what you don’t want. Side note: the workaround for that particular issue is to search on specific tempos, but that isn’t really the same as searching for songs that someone explicitly tagged as slow or fast for a particular dance, since there is more thought put into tagging (and not every song has a tempo associated with it).

I’ve done a bunch of restructuring and added more than a bit of UI to enable the kinds of searches that I’m describing here. I’m currently busy updating the documentation to catch up, but I hope that the fundamental change is relatively intuitive.

There have always been two kinds of tags: tags on songs and tags on top of a dance style for a song. I’m gravitating to calling the latter dance-specific tags, although I haven’t been 100% consistent yet. If you go to any of the dance details pages (try Slow Waltz), you’ll see two tag clouds now, labeled Dance Tags and Song Tags. Clicking on any of the tags in the Dance (specific) Tags section will give you the option to list the songs with that tag on Rumba.

Alternatively, you can navigate to the Advanced Search page, add Rumba to the list of dances, toggle the “Show Dance Details” switch, and select the option to include the American tag. In either case, you’ll end up with this result. Or we can answer the original question of All Cha Cha songs tagged as “American” style.

In any case, this is a very large new feature that includes a breaking schema change in the search index, so there are bound to be bugs. Please poke at it and let me know what you think. I’m doing my best to enable the deep scenarios that you ask for without overly complicating the core scenarios. Part of what I’m trying to do is what I alluded to in my last post, where I made a reference to making it easier to add refinements to dance searches, so that you can more accurately find all American Style Slow Foxtrots – once could theoretically do something similar with Country Cha Chas (which aren’t currently supported at all).

Please let me know if you have any thoughts about the subject of 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.

New Feature: Searching on songs with a minimum number of dance votes

Several folks have been frustrated with the number of songs in the music4dance catalog that only have one or two votes for a particular dance style. This limitation doesn’t matter for many searches because you can sort by dance votes, and the most popular songs end up at the top. But if you want to…

New Dance: Single Swing

I’ve added Single Swing as a dance style that can be searched on and voted for in the music4dance catalog. While I think of this dance as a short-cut to use when I want to dance East Coast Swing to faster Jive or Lindy-Hop music, I’ve received enough feedback from the community that it’s considered a unique dance in its own right that…

“Search like Google” is now the default

Update (July 2024): This underlying search mechanism described in this series of posts is still in place and functions as described here, but the user interface has changed. Please see the Simple Search and Advanced Search documentation for how the current user interface works. I’ve just updated the music4dance site to make the new search engine the…

New Feature: Searching on songs with a minimum number of dance votes

Several folks have been frustrated with the number of songs in the music4dance catalog that only have one or two votes for a particular dance style. This limitation doesn’t matter for many searches because you can sort by dance votes, and the most popular songs end up at the top.

But if you want to sort by something else, such as tempo or date modified, you’re out of luck. That is until now.

I’ve added a feature in advanced search that enhances the ability to filter by dance. Previously, you could filter only on whether a song had a net of at least one vote for a dance style. Now, you can filter on any threshold. So, if I want to create a list of all songs with at least three votes (net) between 160 and 180 beats per measure sorted by date added, I can do that now.

Here’s how:

  1. Go to Advanced Search
  2. Choose Salsa in the Dance filter
  3. Click on Show Thresholds
  4. Click on the “+” next to Salsa twice to increase the threshold to 3
  5. Change the tempo range to 160-180
  6. Choose “When Added” for the “Sort By” field
Advanced Search with Dance Thresholds
Advanced Search with Dance Thresholds example

Let me know what you think. Are there other ways you would use this kind of filter? Is there any reason to filter out the most voted for songs? That’s certainly possible, but I didn’t see a use case for that.

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.

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 2015Music4Dance 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 SmoothAmerican RhythmInternational 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.