How To Setup FastDL (CSGO, GMOD, TF2, L4D)

February 27, 2023
How To Setup FastDL

Have you ever been excited to start a new game server filled with custom content, only to be met with frustrating download errors or error boxes?

Fear not, because we have the solution to your problems: FastDL (fast download).

In this post, we'll guide you through the correct process of setting up FastDL for popular games like CSGO, Garry's Mod, TF2, and L4D. Pretty much any source game you can think of, it's going to be the same guide.

Just keep in mind, a FastDL is simply a website and 2 lines of config. Don't overcomplicate it and see my examples below that help explain it.

So, get ready to level up your gaming experience and say goodbye to those pesky download issues!

What Exactly Is A FastDL Server?

custom content source game fastdl

FastDL is simply a website that hosts all the custom content for your source game server.

For example, if you want to host a custom map on your server, the client has to be able to download that map to their own computer to be able to join. The same thing goes for models, materials, particles, and sounds.

Here are some examples of what a FastDL looks like:

As you will notice most files are in .bz2 format. This is because they are compressed files.

When you download custom content the game client will try to download a .bz2 format file first. If that's not available the download will fall back to just the raw file.

It's not necessary for your FastDL to be compressed.


To get started all your need is a game server and a web host with FTP access. You must have your domain already set up and accessible from the internet (aka, you can go to the website domain and something will show up).

You can use any web host you want but If you don't already have a web server, then you can get one with unlimited storage from Dreamhost (you can also use this same account to run your gaming website, stats website, etc).

You may have seen other guides out there that tell you to create your own Apache/Nginx server or something on the game server itself.

I strongly advise against this as it can lead to problems with your game server lagging if it's not set up correctly and, to be honest, that is the old-school way of doing things.

No large gaming community uses FastDL on the same machine their game servers are on.

How To Setup FastDL

Setting up a FastDL is quite simple and is the same for most source games. For this example, I'm going to be using CSGO, uploading a custom map called bhop_y.bsp, and ranks for a Faceit levels plugin.

This is going to be the same for most source games. In this tutorial, the root domain is going to be

Step 1. Log into your web server


Log in to your web server using FTP. For this example, we are using Dreamhost but your web host would have provided you with these details. On Dreamhost, you can get your FTP details from here.

Use an FTP tool such as Filezilla to log into your FTP.

Once you log in, select the root directory of the website. In our case, it will be:

For you, it will be whatever your domain is set as.

Step 2. Create a folder for the game

fastdl FTP

We need to upload the custom content to the server. First, in the root directory of your website create a folder called csgo. If you're using another game then call this folder css, tf2, l4d2 etc.

This is to keep things organized especially if you're going to use the FastDL for multiple games.

This means our FastDL directory is

Step 3. Upload the custom content

fastdl FTP after folders are created

Now it's time to upload the custom content. This has to match the exact location and file path as it does on the game server itself.

So for the map, we need to create a folder on the Fastdl called maps, and I'm going to upload the map bhop_y.bsp to the folder.

This means the map is now located at

For the plugin materials, we need to upload the folder "materials" provided in the plugin.

So we should have a folder called

As you can see the plugin developer pre-compressed the files for us.

Step 4. Configure your game server to look at your FastDL


Once we have uploaded our files and folders, we need to set our server to use the FastDL we have created.

On your server navigate to /cfg/server.cfg (if you don't have this file then create it).

Paste the following lines:
sv_downloadurl ""
sv_allowdownload 1

Make sure there is no forward slash at the end of the URL.

Step 5. Restart your game server and test

fastdl example

Now you can restart your game server and connect. If you have the developer console enabled you can press the "~" button on your keyboard and check if the files are actually downloading.

As you can see in this example there is an error about a missing .nav file for the map, we can safely ignore this error. If you want to get rid of it then you can upload the .nav file from your server to your FastDL.

Frequently Asked Questions

If you have followed the guide above, everything should be working as intended but here are the most common questions about fast downloads.

Can I make the resources smaller?

Yes, you can. You will need to compress the files into .bz2 format.

My friend GAMMACASE has made a script that will compress all custom content so you can quickly upload it to your FastDL server.

You can get it from here.

I always see an error on downloaded files

If you have not compressed your files in .bz2 format, it will say "Error downloading" when it tries to download the compressed files first.

Afterward, it should download the raw file.

If you always get an error when downloading then double-check that the location of the file on the FastDL matches that on the game server.

Files are not downloading at all

How the source engine works is files need to be added to the download tables. We don't need to do this for maps but we must do this for things like skins, sounds, etc.

Most plugins will actually add files to the download tables automatically, but if they don't you will need to use a Sourcemod plugin on your server.

I suggest you use:

Each addon file the client needs to download must be added to the plugin.


When we started playing online games with our friends, we knew we needed a good game server. But finding one that delivered what gaming communities need was harder than we thought. That's why we decided to start our own game server network.
© 2024 GhostCap®

All product and company names are trademarks™ or registered® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

We may earn commission from companies if you purchase via our affiliate link. This helps us run GhostCap as a free resource for you. Please note that we are not asked to promote these products and do so on our own accord. As an Amazon Associate we may earn from qualifying purchases.

All specifications are subject to change without notice.