Thank you so much for all of the suggestions. What ended up working was I wrapped the TableView in a StackPane, and I also think the TableView needed the data. The empty columns by themselves didn't add the scrollbar. The Columns are now resizing too, they're just very slightly to small to fit entire column header so I think I just need to expand the relative widths slightly.