by Tim Cant

How to write a bass line: 8 key steps to support your song

how to write a bass line

Bass lines are a fundamental element of practically all contemporary popular music styles, and help give a track its weight and groove. In this tutorial on how to write a bass line, we’ll show you how to select a bass patch, how to write a good bass line from a chord progression, add rhythm and variations, and ensure your bass is mixed to perfection.

For this guide we’re going to work in a classic, funky house music style, but the lessons you’ll learn can be applied to any genre.

Learn how to write a bass line:

  1. Pick a bass sound
  2. Derive a simple bass line from chords
  3. Create rhythm with your bass line
  4. Add variation to your bass line
  5. Get off the root
  6. Use advanced expression
  7. Make a longer groove
  8. Add a sub-bass

If you’d like to follow along as you learn how to write bass lines, learn more about Native Instruments’ powerful MASSIVE X synth.

EXPLORE MASSIVE X

What is a bass line?

A bass line is a series of notes played on a bass guitar or other low end instrument that provides the foundation and harmony for a song. The bass line usually plays the root notes of the chords and follows the chord progression of the song. It helps to define the groove and overall feel of the music and provides a foundation for the other instruments to build upon.

How to write a bass line

1. Pick a bass sound

A bass line doesn’t exist in a vacuum, and it has to work with your track’s beats and any musical elements. In this example we’ll set our DAW’s project tempo to 125, and we’ll add a set of chords and beats to the audio track of the project.

 

Dragging the chords and beat into the DAW

This is how they sound played together.

What we have here is a house groove with some sixteenth note swing and jazzy seventh chords—the perfect accompaniment to some funky bass action. The chords are smooth-sounding and aren’t overly complicated, giving us some room to have an expressive bass line. There’s room in the mix for a bass with some mid-range harmonic elements, so let’s find a suitably rich sound.

Load up MASSIVE X on a MIDI track, then click the preset name to bring up the browser. In the browser, click the Bass tag to filter out any presets that aren’t bass sounds. You can double-click a preset to load it up and audition it. Load up Monkey Forest.

MASSIVE X’s Monkey Forest preset

This is a punchy and harmonically rich bass sound that is ideal for our needs. It doesn’t have a huge amount of low end, but that’s something that we can address later: right now this sound is inspiration and fits the music we’re working with, so let’s start writing our bass line.

2. Derive a simple bass line from chords

Currently this bass sound is a bit too loud for the chords and beats, so let’s turn it down to get it into the same ballpark range as those volume wise. We’ll name the MASSIVE X track Monkey Forest, and set it to -9.5 dB.

Naming and reducing the volume of the Monkey Forest track
Naming and reducing the volume of the Monkey Forest track

Let’s start out by making the simplest bass line possible. We’re going to follow the root notes of the chord progression. The chord progression plays Gmin7, Dmin7, Fmin7, and Gmin7. Here’s how it looks as MIDI:

The chord progression
The chord progression

So, let’s follow the root notes and sequence a bass line that plays G1, D2, F1, G1.

Composing a bassline that follows the chords
Composing a bassline that follows the chords

This is relatively solid-sounding, but not hugely inspiring. Before we spice it up, let’s think for a moment about it in the context of a mix. We want our bass line to add weight to the mix, but when the D2 plays we’re losing a bit of that weight. Let’s transpose the D2 down to a D1, and hear how that sounds.

Transposing bass line down to D1
Transposing bass line down to D1

This has more weight than the previous version, but doesn’t go so low that the bass line feels like it’s losing power.

3. Create rhythm with your bass line

Now let’s add some rhythm to the bass line. The beat for this track has kicks on every beat in classic house four-to-the-floor fashion, and if we follow that we’re not going to have a very interesting rhythm.

Bass line on the beat
Bass line on the beat

So, let’s use some syncopation. For beats two and three let’s use two dotted eighth notes, followed by an eighth note, to take the stresses off the beat.

Adding syncopation to the bass line
Adding syncopation to the bass line

Now, this is starting to feel more musically interesting.

Note that we’re using legato notes. If we wanted a more aggressive sound we could use shorter notes, but having the low-end of the patch ring out over a longer note is what gives the bass line its weight, which is what we’re really after, so we’re keeping those notes as long as possible.

4. Add variation to your bass line

We can get a more expressive feel if we don’t simply follow the root of the chords. An easy way to create some interest is to transpose some notes onto the octave above. Naturally this will make those notes feel less low and weighty, but that will help the rhythm of the bass line feel more varied. Let’s transpose the last note of each chord an octave up.

Transposing notes up an octave
Transposing notes up an octave

This sounds more interesting, but each chord plays the exact same pattern, and it feels like there’s still some room for expression.

5. Get off the root

At this point we’re still using the root note of each chord, albeit on a couple of octaves. Let’s try using some different notes of the chord to get a touch more flavor in there.

Let’s transpose the pitched-up parts of the first two chords down a couple of semitones. This puts them on the seventh rather than the octave.

Taking the octave jumps down to sevenths
Taking the octave jumps down to sevenths

This is beginning to sound more musically interesting, but that last G2 sounds a bit out of place, so let’s take it back down to G1.

Taking out the last octave jump
Taking out the last octave jump

The first two chords are still playing the same pattern, so let’s vary them up by taking the note before the first octave jump down to the seventh, like so:

Dropping down to the seventh
Dropping down to the seventh

6. Use advanced expression

At the moment the F2 note on the third chord sounds okay: it’s hitting the octave up rather than the seventh, which differentiates it from the previous two chords, but there’s room for more expression. Let’s use some modulation to distinguish this note.

Set the modulation wheel level to 100 for that F2 note on the third chord, keeping it at a minimum for the rest of the bass line. This adds vibrato to just the F2 note on the third chord.

Adding vibrato to the F2 note on the third chord
Adding vibrato to the F2 note on the third chord

This accentuates that note in a way that keeps the bass line interesting.

7. Make a longer groove

Our bass line is a repeating four-bar groove. Let’s turn it into an eight-bar groove with one simple edit. Duplicate the bass line out, and at the end of the eighth bar add another note a sixteenth after the last one:

Making an eight-bar groove
Making an eight-bar groove

This helps prevent the bass line from sounding too repetitive, and keeps the track grooving.

Earlier we mentioned that the house beat has a touch of sixteenth note swing on it. Even though this last note falls on a sixteenth it arguably sounds better played straight, so there’s no need to apply any swing to the bass line.

Music-wise our bass line is done, but let’s see if we can squeeze some more out of it in terms of the mix.

8. Add a sub-bass

As we noted earlier, the Money Forest patch doesn’t have a huge amount of sub-bass. We can remedy that by layering it with a more sub-heavy preset. Create a new MIDI track with an instance of MASSIVE X on it, and again click the Bass tab in the preset browser to show just the bass patches. Double click the Funk One patch to load it.

MASSIVE X Funk One preset
MASSIVE X Funk One preset

There’s no lack of sub bass with this patch: it’s extremely heavy in the lows and should provide us with ample weight. Let’s duplicate the MIDI part over from the Money Forest track, name the new track Funk One and turn it down to -14.5 dB.

Duplicating the bass line MIDI
Duplicating the bass line MIDI

Here’s how the layered synths sound.

If we mute the Funk One track we can hear that this preset handles mod wheel values in a different way to the Monkey Forest preset. It opens the filter on the synth, rather than applying modulation:

This doesn’t matter too much, because we want to get rid of all this preset’s mids and highs, just leaving the weighty bass. Add a filter plugin to the Funk One patch with a 24 dB low-pass filter set to 445 Hz.

Filtering out the sub’s mids and highs
Filtering out the sub’s mids and highs

Here’s how the filtered sub sounds solo.

Now here’s how the finished bass line sounds all together with the rest of the elements in the mix.

Filtering out the mids and highs from the sub layer gives us a cleaner, more defined sound. And there we have it: a weighty bass line with funky syncopation and groovy variations.

Start writing bass lines

Here we’ve seen how to select bass patches, compose a bass line from a chord progression, add variations and use layering to make a big-sounding bass line that supports the music. If you’d like to check out more on bass lines, read our tutorials on ways to make your bass stand out, how bass works, and how to make a beat.

Be sure to check out the demo version of MASSIVE X for all your bass needs.

EXPLORE MASSIVE X

Related articles