BFDA: A Matlab Toolbox for Bayesian Functional Data Analysis. We provide a Matlab toolbox, BFDA, that implements a Bayesian hierarchical model for smoothing functional data and estimating mean-covariance functions simultaneously and nonparametricaly, with the assumptions of Gaussian process for functional data and mean function, and the assumption of Inverse-Whishart process for the covariance function. An option of approximating the Bayesian inference process with cubic B-spline basis functions is integrated in this toolbox, which allows the possibility of dealing with large-scale functional data. Examples of functional data regression with one functional independent variable, scalar and functional response variables are provided. The advantages of BFDA include: (1) Simultaneously smooths functional data and estimates the mean-covariance functions in a nonparametric way; (2) efficiently deals with large-scale functional data with random or high-dimensional observation-grids; (3) Flexibly adapts for both stationary and nonstationary functional data; (4) Provides accurately smoothed functional data for follow-up analysis.