Smart Playlists

A smart playlist is a set of rules instead of a list of tracks, so it updates itself as your library and history change.

Create one from the add button in the playlists page, or from the smart playlists page. 📄 Smart Playlists Page ↗

Tracks are found only when you open the playlist, and can’t be added manually. 📄 Why aren't smart playlists treated as normal playlists? ↗

smart playlist dialogsmart playlist dialogsmart playlist editor filledsmart playlist editor filled
smart playlist dialogsmart playlist dialogsmart playlist editor filledsmart playlist editor filled

How Rules Combine

Rules live inside groups. Each group picks All (every rule must match) or Any (one is enough) for its rules, and a separate All/Any at the top joins the groups together (shown once there are 2 groups or more):

Setup Means
One group, All A and B and C
One group, Any A or B or C
Two groups, All for rules, Any for groups (A and B) or (C and D)
Two groups, Any for rules, All for groups (A or B) and (C or D)

The count under the dialog title shows how many tracks match as you edit.

Rules

Press “Add Rule” in a group, pick a Source and a Filter Type, then fill in the value.

Sources come in 4 types: Text, Number, Date and Condition.

smart playlist editorsmart playlist editorsmart playlist rulesmart playlist rule
smart playlist editorsmart playlist editorsmart playlist rulesmart playlist rule

Text Rules

Sources: Title, Album, Artist, Album Artist, Composer, Genre, Style, Comment, Description, Synopsis, Language, Record Label, Release Type, Format, Channels, Lyrics, Moods, Tags, Playlist 🆕 v7.8.0, Playlist tags 🆕 v7.8.0, Youtube Link, Youtube ID, File Name, Filename without extension, File Full Path, Folder Name, Folder Path and Extension.

Filters:

  • is Same, is Not Same
  • Contains, does not Contain
  • Starts with, Ends with
  • Contains (Regex), does not Contain (Regex)
  • is Before (A-Z), is After (A-Z), is in Between (A-Z), is Outside (A-Z) 🆕 v7.8.0
  • Exists, Missing (for whether the field has any value at all)

Good to know:

  • Cleanup (on by default) ignores case, accents and symbols, so beyonce matches Beyoncé.
  • Fields with several values (like artists or genres) match when any value matches. Negative filters match only when none does.
  • Playlist and Playlist tags are the playlists the track is in, and their tags. gym matches gym/cardio too.
  • Language tags are turned into one form like English (eng) (from en, eng or English), so match against that, like “Language Contains english”. 🆕 v8.2.0
  • A-Z filters compare alphabetically, so “is in Between A and C” includes Coldplay.
  • Values are suggested from your library as you type.
  • A value can include other fields of the same track (with the source icon beside it). Title Contains [Artist] finds titles that mention their own artist.
  • Description, Synopsis and Lyrics can make big playlists slower.

Number Rules

Sources:

Source Value
Total Listens listens count, never played tracks count as 0
Total Listens (Between Dates) listens count inside a date range, see below
Listens per Month 🆕 v7.8.0 average listens per month, since the first listen or date added
Rating 0 to 100
Last Played Position seconds
Played Percentage 0 to 100, how far the track was played last time
Duration seconds
Size bytes, the slider works in MB
Bitrate kb/s (320)
Sample Rate, Bit Depth, BPM as stored in the file
Track/Disc Number & Total as stored in the tags
Playlists Count 🆕 v7.8.0 how many playlists the track is in
Total Tracks 🆕 v7.8.0 how many tracks the album, artist, genre or folder has, see Per

Filters: is Same, is Not Same, is Greater Than, is Smaller Than, is Greater Than + is Same (≥), is Smaller Than + is Same (≤), is in Between and is Outside. “is in Between” includes both ends.

Listens Between Dates

Adding “Total Listens (Between Dates)” also adds a “Between Dates” rule to its group, only the listens inside those dates are counted.

Example, tracks you played at least 10 times last summer:

  • Total Listens (Between Dates) is Greater Than + is Same 10
  • Between Dates is in Between 2026-06-01 and 2026-08-31

Per & Calculation

🆕 v7.8.0

Number rules have a Per option (Track by default). Set it to Album, Artist, Genre, Folder and more, and the rule checks the whole album or artist instead (like “Total Listens per Artist”). Every track of a matching one gets in.

The Calculation turns their values into one number: Sum, Average, Minimum or Maximum. Unknown values (like a missing rating) are skipped.

Examples:

  • Total Listens per Artist (Sum) is Greater Than 500: every track of the artists you played more than 500 times in total.
  • Rating per Album (Average) is Greater Than + is Same 80: albums you rated high overall, including their unrated tracks.
  • Rating per Album (Minimum) is Greater Than + is Same 80: albums with no weak track.
  • Total Tracks per Genre is Smaller Than 5: tracks from your rare genres.

Date Rules

Sources: Date Added, Date Modified, Year, Any Listen, All Listens, First listen, Last Listen and Favourited Date.

Filters:

  • is Same, is Not Same, is Before, is After, is in Between, is Outside. Before, After and in Between include the dates you enter.
  • is Within Last, is not Within Last (a moving window like the last 3 days, counted back from now in seconds, minutes, hours, days, weeks, months or years).
  • Exists, Missing.

Good to know:

  • Type dates as 2024-05-20 or 2024-05-20 18:30:00, or pick one with the calendar icon.
  • Any Listen matches when at least one listen matches, All Listens only when every listen matches.
  • Never played tracks have no listen dates, they match “is not Within Last”, and “First listen Missing” finds exactly them.
  • A year tag like 1995 counts as the first day of that year, so use is in Between 1990-01-01 and 1999-12-31 for a decade.
  • Date Added and Date Modified come from the file dates, see 🎉 File Dates ↗.
  • Clock Only compares the time of day only (HH:mm:ss), ignoring the date. Ranges can cross midnight, so Any Listen is in Between 22:00:00 and 04:00:00 finds tracks you played at night.

Condition Rules

Sources: Lossless, Favourite and Single.

Filters: is True, is False and is Unknown.

  • Single is True when:
    • the release type tag says single 🆕 v8.2.0
    • or there’s no release type tag, and the track is the only one in its album

Limit

🆕 v7.8.0

Keep only part of the matching tracks (like 25 tracks, 1 hour or 4 GB), selected by any sort, Most Played by default. Time and size limits get filled as close as possible.

Select by Random (Daily) for a new pick every day.

smart playlist limitsmart playlist limit
smart playlist limitsmart playlist limit

Sorting

The sort button at the top orders the tracks (after the limit picked them). Several sorters work too (like artist, then year, then title). 🆕 v7.5.0

Random (Daily) keeps the same random order for the whole day, it’s in every tracks sort menu. 🆕 v7.8.0

The same rules work as a one time search, press the filter icon at the end of the chips row in the search page. Long press it to edit the rules, the add icon there 🆕 v8.2.0 saves them as a new smart playlist.

In album, artist and other media pages, long press the filter icon to start one filled with that media.

Examples

Rules are written as Source Filter Value. Unless said otherwise, everything is in one group with All.

Easy

One rule each.

  • Never played: Total Listens is Same 0.
  • Fresh additions: Date Added is Within Last 30 Days.
  • Recently changed files: Date Modified is Within Last 7 Days. Files edited outside Namida, or with Keep file dates off.
  • Loved ones: Rating is Greater Than + is Same 80.
  • Hi-res only: Sample Rate is Greater Than 48000.
  • Rock: Genre Contains rock. Cleanup is on, so Rock, ROCK and Hard Rock are included.
  • One folder: Folder Path Starts with /storage/emulated/0/Music/Anime.
  • Not in any playlist: Playlists Count is Same 0.
  • No embedded lyrics: Lyrics Missing. A to-do list for the lyrics picker.
  • Unfinished tracks: Played Percentage is Greater Than 0. Tracks you stopped or skipped before the end last time.

Medium

A few rules, All/Any, a limit or a sort.

  • 90s favourites: Year is in Between 1990-01-01 and 1999-12-31, Favourite is True.
  • Forgotten favourites: Favourite is True, Last Listen is not Within Last 6 Months.
  • Rock or metal: set the group to Any, Genre Contains rock, Genre Contains metal.
  • Unheard gems: Total Listens is Same 0, Date Added is not Within Last 1 Months.
  • Unhearted bangers: Total Listens is Greater Than 30, Favourite is False.
  • Fresh obsessions: First listen is Within Last 2 Months, Listens per Month is Greater Than 10.
  • Timeless: First listen is not Within Last 2 Years, Last Listen is Within Last 7 Days. Old tracks still in rotation.
  • One and done: Total Listens is Same 1, First listen is not Within Last 3 Months. Played once, never again.
  • Late night tracks: Any Listen is in Between 22:00:00 and 04:00:00 with Clock Only.
  • Night owl only: All Listens is in Between 22:00:00 and 04:00:00 with Clock Only. Tracks you only ever played at night.
  • Morning tracks: Any Listen is in Between 06:00:00 and 10:00:00 with Clock Only.
  • Daily hour: Rating is Greater Than + is Same 70, Limit 60 Minutes selected by Random (Daily). A new hour of your best tracks every day.
  • Short and fast: Duration is Smaller Than 180, BPM is Greater Than 140.
  • Played this week: Total Listens (Between Dates) is Greater Than 0 with Between Dates is Within Last 7 Days, sorted by Recent Listens.

Complex

Several groups, Per and field references.

  • Old gold or new heat: two groups joined with Any.
    • Group 1 (All): Year is Before 1990-01-01, Rating is Greater Than + is Same 80.
    • Group 2 (All): Date Added is Within Last 3 Months, Listens per Month is Greater Than + is Same 8.
  • Deep cuts of big artists: Total Listens per Artist (Sum) is Greater Than 300, Total Listens is Smaller Than 3. Rarely played tracks from the artists you play the most.
  • Albums worth finishing: Total Tracks per Album is Greater Than + is Same 8, Total Listens per Album (Sum) is Greater Than 20, Total Listens is Same 0. The tracks you never played from albums you do play.
  • Title tracks: Title is Same [Album], using the Album source inside the value. Tracks named after their own album.
  • Gym, no live versions: two groups joined with All.
    • Group 1 (Any): Playlist tags is Same gym, Genre Contains workout.
    • Group 2 (All): Title does not Contain live, Album does not Contain (Regex) live|concert.
  • Last summer on repeat, 2 hours: Total Listens (Between Dates) is Greater Than + is Same 10 with Between Dates is in Between 2026-06-01 and 2026-08-31, Limit 2 Hours selected by Most Played, sorted by Random.
  • Rediscover a year: First listen is in Between 2022-01-01 and 2022-12-31, Last Listen is not Within Last 1 Years, Favourite is False, Rating is Greater Than + is Same 60.


Page ConnectionsOpen in graph ↗

Author: @MSOB7YY
Writer: @claude