Displaying Your Own Annotations in the Genome Browser

The Genome Browser provides dozens of aligned annotation tracks that have been computed at UCSC or have been provided by outside collaborators. In addition to these standard tracks, it is also possible for users to upload their own annotation data for temporary display in the browser. These custom annotation tracks are viewable only on the machine from which they were uploaded and are automatically discarded 48 hours after the last time they are accessed, unless they are saved in a Session. Optionally, users can make custom annotations viewable by others as well. For a more stable option for custom annotations, we suggest using track hubs. A third, more technical, option is to operate a mirror. Custom tracks work well for quickly displaying data, while track hubs are more configurable and permanent.

Custom tracks are a wonderful tool for research scientists using the Genome Browser. Because space is limited in the Genome Browser track window, many excellent genome-wide tracks cannot be included in the standard set of tracks packaged with the browser. Other tracks of interest may be excluded from distribution because the annotation track data is too specific to be of general interest or can't be shared until journal publication. In the past, many individuals and labs contributed custom tracks to the Genome Browser website for use by others. To view a list of these custom annotation tracks, click here.

Track hubs are now the preferred approach for viewing and sharing data on the Browser. Labs, consortia, and institutions submit their hubs to be listed as a Public Hub. Track hubs require remotely hosted data. They use binary index files which allow the browser to quickly access only what is relevant for the current region being viewed in the browser. See the track hub help page for more information.

Genome Browser annotation tracks are based on files in line-oriented format. Each line in the file defines a display characteristic for the track or defines a data item within the track. Annotation files contain three types of lines: browser lines, track lines, and data lines. Empty lines and those starting with "#" are ignored.

To construct an annotation file and display it in the Genome Browser, follow these steps:

Step 1. Format the data set:
Format your data as a tab-separated file using one of the formats supported by the Genome Browser. Annotation data can be in standard GFF format or in a format designed specifically for the Human Genome Project or UCSC Genome Browser, including bedGraph, GTF, PSL, BED, bigBed, WIG, bigGenePred, bigNarrowPeak, bigMaf, bigChain, bigPsl, barChart, bigBarChart, interact, bigInteract, bigWig, BAM, CRAM, VCF, MAF, BED detail, Personal Genome SNP, broadPeak, narrowPeak, and microarray (BED15). GFF and GTF files must be tab-delimited rather than space-delimited to display correctly. Chromosome references must be of the form chrN (the parsing of chromosome names is case-sensitive). You may include more than one data set in your annotation file; these need not be in the same format.

Step 2. Define the Genome Browser display characteristics:
Add one or more optional browser lines to the beginning of your formatted data file to configure the overall display of the Genome Browser when it initially shows your annotation data. Browser lines allow you to configure such things as the genome position that the Genome Browser will initially open to, the width of the display, and the configuration of the other annotation tracks that are shown (or hidden) in the initial display. NOTE: If the browser position is not explicitly set in the annotation file, the initial display will default to the position setting most recently used by the user, which may not be an appropriate position for viewing the annotation track.

Step 3. Define the annotation track display characteristics:
Following the browser lines--and immediately preceding the formatted data--add a track line to define the display attributes for your annotation data set. Track lines enable you to define annotation track characteristics such as the name, description, colors, initial display mode, use score, etc. The track type=<track_type> attribute is required for some tracks. If you have included more than one data set in your annotation file, insert a track line at the beginning of each new set of data.

Example #1: Here is an example of a simple annotation file that contains a list of chromosome coordinates.

browser position chr22:20100000-20100900
track name=coords description="Chromosome coordinates list" visibility=2
#chrom chromStart chromEnd
chr22   20100000 20100100
chr22   20100011 20100200	
chr22   20100215 20100400
chr22   20100350 20100500
chr22   20100700 20100800
chr22   20100700 20100900

Click here to view this track in the Genome Browser.

Example #2: Here is an example of an annotation file that defines 2 separate annotation tracks in BED format. The first track displays blue one-base tick marks every 10000 bases on chr22. The second track displays red 100-base features alternating with blank space in the same region of chr22.

browser position chr22:20100000-20140000
track name=spacer description="Blue ticks every 10000 bases" color=0,0,255,
#chrom chromStart chromEnd
chr22   20100000 20100001
chr22   20110000 20110001
chr22   20120000 20120001
track name=even description="Red ticks every 100 bases, skip 100" color=255,0,0
#chrom chromStart chromEnd name
chr22   20100000 20100100	first
chr22   20100200 20100300	second
chr22   20100400 20100500	third

Click here to view this track in the Genome Browser.

Example #3a: This example shows an annotation file containing one data set in BED format. The track displays features with multiple blocks, a thick end and thin end, and hatch marks indicating the direction of transcription. The track labels display in green (0,128,0), and the gray level of the each feature reflects the score value of that line.

browser position chr22:1000-10000
browser hide all
track name="BED track" description="BED format custom track example" visibility=2 color=0,128,0 useScore=1
#chrom chromStart chromEnd name score strand thickStart thickEnd itemRgb blockCount blockSizes blockStarts
chr22 1000 5000 itemA 960 + 1100 4700 0 2 1567,1488, 0,2512
chr22 2000 7000 itemB 200 - 2200 6950 0 4 433,100,550,1500 0,500,2000,3500 

Click here to view this track in the Genome Browser.

Example #3b: This example shows a simple annotation file containing one data set in the bigBed format. This track displays random sized blocks across chr21 in the human genome. The big data formats, such as the bigBed format, can be uploaded using a bigDataUrl that is specified in the track line. For more information on these track line parameters, refer to the Track Lines section. When using bigDataUrls, data is cached and updated every 300 seconds. If you are updating your big data tracks with different displays and are not seeing your track changes in the browser, you may want to add the udcTimeout= parameter to prevent caching of your track data and force a reload.

You may paste these two lines directly into the "Add Custom Tracks" page to view this example in the browser:

browser position chr21:33,031,597-33,041,570
track type=bigBed name="bigBed Example One" description="A bigBed file" bigDataUrl=http://genome.ucsc.edu/goldenPath/help/examples/bigBedExample.bb

Alternatively, you may also upload just the URL of the bigBed file:


This will infer the track type as "bigBed" based on the file extension and set the track name to "bigBedExample".

Step 4. Display your annotation track in the Genome Browser
From the Gateway page, select the genome assembly on which your annotation data is based, click 'GO', then click the "add custom tracks" or "manage custom tracks" button below the tracks window.

On the Add Custom Tracks page, load the annotation track data or URL for your custom track into the upper text box and the track documentation (optional) into the lower text box, then click the "Submit" button. Tracks may be loaded by entering text, a URL, or a pathname on your local computer. The track type=<track_type> attribute is required for some tracks. For more information on these methods, as well as information on creating and adding track documentation, see Loading a Custom Track into the Genome Browser.

If you encounter difficulties displaying your annotation, read the section Troubleshooting Annotation Display Problems.

Step 5. (Optional) Add details pages for individual track features
After you've constructed your track and have successfully displayed it in the Genome Browser, you may wish to customize the details pages for individual track features. The Genome Browser automatically creates a default details page for each feature in the track containing the feature's name, position information, and a link to the corresponding DNA sequence. To view the details page for a feature in your custom annotation track (in full, pack, or squish display mode), click on the item's label in the annotation track window.

You can add a link from a details page to an external web page containing additional information about the feature by using the track line url attribute. In the annotation file, set the url attribute in the track line to point to a publicly available page on a web server. The url attribute substitutes each occurrence of '$$' in the URL string with the name defined by the name attribute. You can take advantage of this feature to provide individualized information for each feature in your track by creating HTML anchors that correspond to the feature names in your web page.

Example #4: Here is an example of a file in which the url attribute has been set to point to the file http://genome.ucsc.edu/goldenPath/help/clones.html. The '#$$' appended to the end of the file name in the example points to the HTML NAME tag within the file that matches the name of the feature (cloneA, cloneB, etc.).

browser position chr22:10000000-10020000
browser hide all
track name=clones description="Clones" visibility=2 color=0,128,0 useScore=1 url="http://genome.ucsc.edu/goldenPath/help/clones.html#$$"
#chrom chromStart chromEnd name score
chr22 10000000 10004000 cloneA 960 
chr22 10002000 10006000 cloneB 200 
chr22 10005000 10009000 cloneC 700 
chr22 10006000 10010000 cloneD 600
chr22 10011000 10015000 cloneE 300
chr22 10012000 10017000 cloneF 100 

Click here to display this track in the Genome Browser.

Step 6. (Optional) Share your annotation track with others
The previous steps showed you how to upload annotation data for your own use on your own machine. However, many users would like to share their annotation data with members of their research group on different machines or with colleagues at other sites. To learn how to make your Genome Browser annotation track viewable by others, read the section Sharing Your Annotation Track with Others.

Loading a custom track into the Genome Browser

Using the Genome Browser's custom track upload and management utility, annotation tracks may be added for display in the Genome Browser, deleted from the Genome Browser, or updated with new data and/or display options. You may also use this interface to upload and manage custom track sets for multiple genome assemblies.

To load a custom track into the Genome Browser:

Step 1. Open the Add Custom Tracks page
Select the top blue bar "My Data" menu and click Custom Tracks. Or, when browsing tracks, click the "add custom tracks" button below the Genome Browser. (Note: if one or more tracks have already been uploaded during the current Browser session, additional tracks may be loaded on the Manage Custom Tracks page. In this case, the button on the Browser page will be labeled "manage custom tracks" and will automatically direct you to the track management page. See Displaying and Managing Custom Tracks for more information.)

Step 2. Load the custom track data
The Add Custom Tracks page contains separate sections for uploading custom track data and optional custom track descriptive documentation. Load the annotation data into the upper section by one of the following methods:

Multiple custom tracks may be uploaded at one time on the Add Custom Tracks page through one of the following methods:

NOTE: Please limit the number of custom tracks that you upload and maintain to less than 1000 tracks. If you have more than this suggested limit of 1000 tracks, please consider setting up a track hub instead.

Step 3. (Optional) Load the custom track description page
If desired, you can provide optional descriptive text (in plain or HTML format) to accompany your custom track. This text will be displayed when a user clicks the track's description button on the Genome Browser annotation tracks page. Descriptive text may be loaded by one of the following methods:

To format your description page in a style that is consistent with standard Genome Browser tracks, click the template link below the documentation text box for an HTML template that may be copied and pasted into a file for editing.

If you load multiple custom tracks simultaneously using one of the methods described in Step 2, a track description can be associated only with the last custom track loaded, unless you upload the descriptive text using the track line "htmlUrl" attribute described above.

Step 4. Upload the track
Click the Submit button to load your custom track data and documentation into the Genome Browser. If the track uploads successfully, you will be directed to the custom track management page where you can display your track, update an uploaded track, add more tracks, or delete uploaded tracks. If the Genome Browser encounters a problem while loading your track, it will display an error. See the section Troubleshooting Annotation Display Problems for help in diagnosing custom track problems.

NOTE: Please limit the number of custom tracks that you upload and maintain to less than 1000 tracks. If you have more than this suggested limit of 1000 tracks, please consider setting up a track hub instead.

Displaying and managing custom tracks

After a custom track has been successfully loaded into the Genome Browser, you can display it -- as well as manage your entire custom track set -- via the options on the Manage Custom Tracks page. This page automatically displays when a track has been uploaded into the Genome Browser (see Loading a Custom Track into the Genome Browser). Alternatively, you can access the track management page by clicking the "manage custom tracks" button on the Gateway or Genome Browser annotation tracks pages. (Note that the track management page is available only if at least one track has been loaded during the current browser session; otherwise, this button is labeled "add custom tracks" and opens the Add Custom Track page.)

The table on the Manage Custom Tracks page shows the current set of uploaded custom tracks for the genome and assembly specified at the top of the page. If tracks have been loaded for more than one genome assembly, pulldown lists are displayed; to view the uploaded tracks for a different assembly, select the desired genome and assembly option from the lists.

The following track information is displayed in the Manage Custom Tracks table:

Displaying a custom track in the Genome Browser
Click the "go" button to display the entire custom track set for the specified genome assembly in the Genome Browser. By default, the browser will open to the position specified in the browser line "position" attribute or first data line of the first custom track in the table, or the last-accessed Genome Browser position if the track is in wiggle data format. To open the display at the default position for another track in the list, click the track's position link in the Pos column.

Viewing a custom track in the Table Browser
Select "Table Browser" from the drop down menu and click the "go" button to access the data for the custom track set in the Table Browser. The custom tracks will be listed in the "Custom Tracks" group pulldown list.

Loading additional custom tracks
To load a new custom track into the currently displayed track set, click the "add custom tracks" button. To change the genome assembly to which the track should be added, select the appropriate options from the pulldown lists at the top of the page. For instructions on adding a custom track on the Add Custom Tracks page, see Loading a Custom Track into the Genome Browser.

Removing one or more custom tracks
To remove custom tracks from the uploaded track set, click the checkboxes in the "delete" column for all tracks you wish to remove, then click the "delete" button. A custom track may also be removed by clicking the "Remove custom track" button on the track's description page. Note: removing the track from the Genome Browser does not delete the track file from your server or local disk.

Updating a custom track
To update the stored information for a loaded custom track, click the track's link in the "Name" column in the Manage Custom Tracks table. A custom track may also be updated by clicking the "Update custom track" button on the track's description page.

The Update Custom Track page provides sections for modifying the track configuration information (the browser lines and track lines), the annotation data, and the descriptive documentation that accompanies the track. Existing track configuration lines are displayed in the top "Edit configuration" text box. In the current implementation of this utility, the existing annotation data is not displayed. Because of this, the data cannot be incrementally edited through this interface, but instead must be fully replaced using one of the data entry methods described in Loading a Custom Track into the Genome Browser. If description text has been uploaded for the track, it will be displayed in the track documentation edit box, where it may be edited or completely replaced. Once you have completed your updates, click the Submit button to upload the new data into the Genome Browser.

If the data or description text for your custom track was originally loaded from a file on your hard disk or server, you should first edit the file, then reload it from the Update Custom Track page using the "Choose File" button. Note that edits made on this page to description text uploaded from a file will not be saved to the original file on your computer or server. Because of this, we recommend that you use the documentation edit box only for changes made to text that was typed or pasted in.

Browser lines

Browser lines are optional, but they give you control of many aspects of the overall display of the Genome Browser window when your annotation file is uploaded. Each line defines one display attribute. Browser lines are in the format:

browser attribute_name attribute_value(s)

For example, if the browser line browser position chr22:1-20000 is included in the annotation file, the Genome Browser window will initially display the first 20000 bases of chr 22.

The following browser line attribute name/value options are available. The value track_primary_table_name must be set to the name of the primary table on which the track is based. To identify this table, open up the Table Browser, select the correct genome assembly, then select the track name from the track list. The table list will show the primary table. Alternatively, the primary table name can be obtained from a mouseover on the track name in the track control section. You can also find instructions on how to find this table name in the video "How do I learn which tables belong to a data track on the UCSC Genome Browser?".

Note that composite track subtracks are not valid track_primary_table_name values. To find the symbolic name of a composite track, look in the tableName field in the trackDb table, or mouse over the track name in the track control section. It is not possible to display only a subset of the subtracks at this time.

Definition: <track_primary_table_name(s)>. You can find the primary table name by clicking "View Table Schema" from the track's description page, or from the Table Browser. It will be listed as the Primary Table. Alternatively, you can mouse-over the track label in the Browser and look at the URL the link points to. The part after the g= in the URL is the track's primary table name (e.g., for UCSC Genes you will see g=knownGene in the URL. The track primary table is knownGene).

Note that the Genome Browser will open to the range defined in the Gateway page search term box or the position saved as the default unless the browser line position attribute is defined in the annotation file. Although this attribute is optional, it's recommended that you set this value in your annotation file to ensure that the track will appear in the display range when it is uploaded into the Genome Browser.

Track lines

Track lines define the display attributes for all lines in an annotation data set. If more than one data set is included in the annotation file, each group of data must be preceded by a track line that describes the display characteristics for that set of data. A track line begins with the word track, followed by one or more attribute=value pairs. Unlike browser lines - in which each attribute is defined on a separate line - all of the track attributes for a given set of data are listed on one line with no line breaks. The inadvertent insertion of a line break into a track line will generate an error when you attempt to upload the annotation track into the Genome Browser.

The following track line attribute=value pairs are defined in the Genome Browser:

Here is an example of a properly formatted track line using the bigBed format, with accompanying browser line:

browser position chr21:33,031,597-33,041,570
track type=bigBed name="bigBed Example One" description="A bigBed file" bigDataUrl=http://genome.ucsc.edu/goldenPath/help/examples/bigBedExample.bb

Sharing your annotation track with others

To make your Genome Browser annotation track viewable by people on other machines or at other sites, follow the steps below.

Step 1. Put your formatted annotation file on your web site. Be sure that the file permissions allow it to be read by others.

Step 2. Construct a URL that will link this annotation file to the Genome Browser. The URL must contain 3 pieces of information specific to your annotation data:

A special blog post discusses and provides examples of many of these parameters such as hgct_customText=<url>, db=<databaseName>, hubUrl=<url>, and genome=<databaseName> to attach custom tracks, track hubs, assembly hubs, and even track hubs to assembly hubs, all in a single URL. Read an overview of ways to share Genome Browser data views in the Sharing Data with Sessions and URLs blog post.

You can add other optional parameters to the URL: (Note: Display may vary if you have conflicting cart variables, for example having both hide all and highlight features.)

If a login and password is required to access data loaded through a URL (e.g., via https: protocol), this information can be included in the URL using the format protocol://user:password@server.com/somepath. Only Basic Authentication is supported for HTTP. Note that passwords included in URLs are not protected. If a password contains a non-alphanumeric character, such as $, the character must be replaced by the hexadecimal representation for that character. For example, in the password mypwd$wk, the $ character should be replaced by %24, resulting in the modified password mypwd%24wk.

For integration into your own website e.g. in an html IFRAME, you can obtain the track image only, without the rest of the genome browser user interface, by replacing hgTracks in the URL with hgRenderTracks, such as in this example:


Combine the above pieces of information into a URL of the following format (the information specific to your annotation file is highlighted):


Example #5:
The following URL will open up the Genome Browser window to display chr22 of the latest human genome assembly and will show the annotation track pointed to by the URL http://genome.ucsc.edu/goldenPath/help/test.bed:


Step 3. Provide the URL to others. To upload a custom annotation track from a URL into the Genome Browser, paste the URL into the large text edit box on the Add Custom Tracks page, then click the Submit button.

If you'd like to share your annotation track with a broader audience, send the URL for your track—along with a description of the format, methods, and data used—to the UCSC Genome mailing list genome@soe.ucsc.edu.

Example #6:
If you would like to share a URL that your colleague can click on directly, rather than loading it in the Custom Track tool (as in Example #5), then the URL will need a few extra parameters. Let's assume that your data is on a server at your institution in one of the large data formats: bigBed, bigWig, bigPsl, bigBarChart, bigChain, bigInteract, bigGenePred, bigMaf, bigNarrowPeak, BAM, CRAM, or VCF. In this case, the URL must include an hgct_customText parameter, which simulates the text box on the Custom Tracks page. Also, the URL must include the bigDataUrl that points to the data file on your server. So, a clickable URL that opens a remote bigBed track for the hg18 assembly to a certain location on chr21 would look like this:


Custom Tracks can also be shared with others through named sessions. First, upload your tracks as discussed in the Loading a Custom Track into the Genome Browser section. Then create a named session that includes your custom tracks by navigating to the "Sessions" page through the "My Data" section in the menu bar. Once there, follow the instructions in the Creating a Session section of the Sessions help page. Once you have saved your custom track into a named session, you can share that session with others by sharing the URL from the "Browser" link or emailing it to them directly by clicking the "Email" link.

Tip: Multiple tracks can be placed into one custom track submission. To do so, create a new file that contains the track lines to each file that will be included. To submit this custom set of tracks, merely use the URL to this new file.

Troubleshooting annotation display problems

Occasionally users encounter problems when uploading annotation files to the Genome Browser. In most cases, these problems are caused by errors in the format of the annotation file and can be tracked down using the information displayed in the error message. This section contains suggestions for resolving common display problems. If you are still unable to successfully display your data, please contact genome@soe.ucsc.edu for further assistance. Messages sent to this address will be posted to the moderated genome mailing list, which is archived on a SEARCHABLE, PUBLIC Google Groups forum.

Problem: When I try one of your examples by cutting and pasting it into the Genome Browser, I get an error message.
Solution: Check that none of the browser lines, track lines, or data lines in your annotation file contains a line break. If the example contains GFF or GTF data lines, check that all the fields are tab-separated rather than space-separated.

Problem: When I click the submit button, I get the error message "line 1 of custom input:".
Solution: Check that none of the browser lines, track lines, or data lines in your annotation file contains a line break. A common source for this problem is the track line: all of the attribute pairs must on the same line and must not be separated by a line break. If you are uploading your annotation file by pasting it into the text box on the Genome Browser Gateway page, check that the cut-and-paste operation did not inadvertently insert unwanted line feeds into the longer lines.

Problem: When I click the submit button, I get the error message "line # of custom input: missing = in var/val pair".
Solution: Check for incorrect syntax in the track lines in the annotation file. Be sure that each track line attribute pair consists of the format attribute=attribute name.

Problem: When I click the submit button, I get the error message "line # of custom input: BED chromStarts[i] must be in ascending order".
Solution: This is most likely caused by a logical conflict in the Genome Browse software. It accepts custom GFF tracks that have multiple "exons" at the same position, but not BED tracks. Because the browser translates GFF tracks to BED format before storing the custom track data, GFF tracks with multiple exons will case an error when the BED is read back in. To work around this problem, remove duplicate lines in the GFF track.

Problem: When I click the submit button, the Genome Browser track window displays OK, but my track isn't visible.
Solution: Check the browser and track lines in your annotation file to make sure that you haven't accidentally set the display mode for the track to hide. If you are using the Annotation File box on the Genome Browser Gateway page to upload the track, check that you've entered the correct file name. If neither of these is the cause of the problem, try resetting the Genome Browser to clear any settings that may be preventing the annotation to display. To reset the Browser, click the "Reset All User Settings" under the top blue Genome Browser menu. If the annotation track still doesn't display, you may need to clear the cookies in your Internet browser as well (refer to your Internet browser's documentation for further information).

Problem: I am trying to upload some custom tracks (.gz files) to the Genome Browser using a URL from a GEO query. However, the upload is failing with the error "line 1 of .gz: thickStart after thickEnd".
Solution: The custom track mechanism supports plain BED files (not bigBed) that are of the type broadPeak or narrowPeak. Set the track attribute type=<track_type> to enable the loader to correctly process the special columns at the end of each line. Your track type entry should consist of two lines: the first to define the track type and the second to specify the URL. For example:

track type=broadPeak

Problem: I've gotten my annotation track to display, but now I can't make it go away! How do I remove an annotation track from my Genome Browser display?
Solution: To remove only one track, click the Manage Custom Tracks button and delete the desired track using the checkbox and Delete button. To quickly remove all of your custom tracks, reset the Genome Browser to its default settings by clicking on "Reset All User Settings" under the top blue Genome Browser menu. This reset will also remove any other customizations you have made to your Genome Browser display.

Problem: I put my custom track files on Dropbox, Apple iCloud, Google Drive, Amazon Drive, Box.com, Microsoft OneDrive, or another "online cloud backup" provider and they will not display in the browser. Why?
Problem: When I try to visualize my custom tracks in the Browser, I receive the error message "Byte-range request was ignored by server".
Solution: Backup providers used to work for hosting simple text-based custom tracks, but things have changed. For large custom track data sets, the use of indexed binary formats such as bigBed and bigWig is preferable and usually fail with backup providers. These formats provide much faster display performance because only the portion of the file needed to display the currently viewed region must be transferred to the Genome Browser server. This requires that they are stored on a real web server. And to allow this type of display, byte-range support must be enabled on the web server. No commercial online backup solution supports this, to our knowledge. To check if your server has byte-range requests enabled, issue the following command:

 curl -I <URL of your file>

In order for your server to host bigBed and bigWig files (or track hubs) for Genome Browser display, the command output must contain:

Accept-Ranges: bytes

If you do not receive this output, you may be able to resolve the problem through one of the following actions:

Problem: I used to host files on Dropbox which used to accept byte-range requests, but I can't get my data to display. Why?
Solution: As described in the previous question, Dropbox is a backup provider and not a real web server and as such does not support hosting indexed files, even though it used to work to some extent. Dropbox recently removed their Public Folder feature, which means all links to files hosted there are inaccessible to the browser. For more information, please refer to this announcement .

Problem: If I can't host files on backup providers like Dropbox or Google Drive where can I host my files, especially my bigWigs and bigBeds?
Solution: The NSF-funded website CyVerse was created to provide free hosting services to researchers, and allows byte-range requests, meaning binary files such as BAMs, bigBeds, and bigWigs can be hosted. Please see the Hosting section of the Track Hub help page for more information on hosting your data at CyVerse and other alternatives.

Problem: I have a bigBed file with colors in the 9th column. I set the option itemRgb on in the trackDb file, the track is fine, but why are the boxes all black?
Solution: When type is set to bigBed, the track hub assumes that the bigBed track is BED3 by default. To allow track hubs to use all fields in a bigBed file, you must define how many columns to expect. For example, if a bigBed file has nine columns, which would include an itemRgb field to display a R,G,B color value (e.g. 255,0,0), specify the type as type bigBed 9 or if the bigBed contains additional non-standard columns, use type bigBed 9 +.