What is the best free or cheap music editing software available? I am looking for something to write and edit scores with. I know that Finale and Sibelius are the best on the market, but I wouldn't use them enough to justify the price.

I don't need many features, though here are a few that I could really use:

  • Audio play back
  • Ability to write without a time signature
  • Able to draw non-conventional notation (i.e. Schenker graphs)

Here's an example of what I'd like to draw:

example notation

  • I'm not sure if it supports free-form notation, but Finale Notepad used to be free. Not sure when it stopped but I believe 2007 was what I used, I'm sure you could find it with a web search.
    – user28
    Nov 28, 2011 at 21:45

7 Answers 7


Check out Lilypond: http://lilypond.org/ It's free and powerful, and although it won't do audio playback, I believe it can do the rest of what you ask. It's text-based, and if you are at all familiar with TeX or LaTeX, Lilypond will feel similar. It has a somewhat steep learning curve, but there are some GUIs in active development that make things easier, and there's also some software that allows for input via MIDI keyboard.

Edit: Seems Lilypond can output MIDI files, so presumably you could get audio playback that way.

  • 1
    Thanks Alex. After asking this question, I did a google search and came upon lilypond. Seems like it will be the perfect combination of ease of use and control of output. I like the text-based input too. Gets to my nerdy side :) Nov 27, 2011 at 20:27
  • 4
    Ease is.....relative. While lilypond does give you a great amount of control over the output, it is fairly time-consuming to make the source file that gets interpreted.
    – Babu
    Nov 27, 2011 at 21:08
  • 2
    It's a matter of preference. Some people prefer the source code / compiled output model.
    – slim
    Nov 28, 2011 at 18:16
  • 1
    @Babu, I spent about 2 hours last night trying to draw a simple Schenker graph. I love the complete control over the output, but I agree it is very time consuming. I had to give up and just do it by hand. Nov 28, 2011 at 21:22

With Lilypond, the example of the OP could be drawn like follows:

\score {
  \relative c {
    \time 2/4
    \clef bass
    \key f \major
    << { \override NoteColumn.ignore-collision = ##t \stemDown
         \phrasingSlurDown \phrasingSlurDashed 
         \once \override NoteHead.duration-log = #1
         \once \override Beam.positions = #'(-6.47 . -6.47)
         \once \override PhrasingSlur.control-points = #'((1 . -.5) (3 . -5) (22 . -5) (24 . -3))
         f8*4[\( ~ \hide Stem f8*4] ~ f4*2( 
         \newSpacingSection g4 a)( 
         \phrasingSlurSolid \undo \hide Stem f,\)\()(
         \once \hide Stem c') d\)\(( \once \hide Stem a') 
         \once \override Stem.length = #9.27 
         \newSpacingSection \time 4/4
         bes8*8/3\)\( \once \hide Stem e,4*4/3( f) 
         \newSpacingSection \time 8/2
         \once \hide Stem d4*2
         \once \override Beam.positions = #'(-5.97 . -5.97)
         \once \override Beam.transparent = ##f
         \once \hide Stem e8*4[\) 
         \once \override NoteHead.duration-log = #1 
         f8*16] } \\ 
       { \hide NoteHead \hide Stem \slurUp s2*6 
         \once \override Slur.control-points = #'((1 . 3.5) (3 . 5) (11 . 4) (13.5 . 1))
         bes2( bes,4*4) 
         \undo \hide Stem e4*2 } \\ 
       { \hide NoteHead \hide Stem s2*6 
         \once \override Slur.control-points = #'((1 . -7) (10 . -10) (17 . 7.5) (20 . -.5))
         bes'2( s4 e,4) } >> \bar "|."

  \layout {
    \omit Score.TimeSignature

enter image description here

  • 1
    This is impressive. Maybe add a brief introduction paragraph about lilypond to make the answer perfect. Apr 2, 2020 at 18:29

I agree with everyone else that is suggesting Lilypond. Here is a Linux Journal article on creating Schenker Graphs with Lilypond.



is getting some attention. It's free, cross-platform, and imports and exports MusicXML. I have not tried it.


As little addon to the Lillypond suggestion:

Check out this snippet from the Lilypond Snippet Repository

enter image description here

I also found the channel #lilypond on Freenode being quite a good resource when getting stuck with something.


rosegarden is another option. It's mostly meant to be used as a MIDI sequencer/DAW, but has a score facility which I believe will let you edit scores directly. It's only available for linux.

  • 2
    Rosegarden uses lilypond as a backend for generating scores, which is nice. I'm unsure as to whether or not it supports everything that lilypond supports in terms of that......uh.....whatever you're doing in that picture is called! :P
    – Babu
    Nov 28, 2011 at 5:30

Denemo is an open source tool for writing scores. It appears to be quite powerful (and has a lilypond interface as well as playback), but the documentation is weak. I couldn't even figure out how to do score writing with bass-line and melody in the same staff, although I know it's possible.

Not the answer you're looking for? Browse other questions tagged or ask your own question.