As noted in another answer, it's relatively easy to tell if a file is bigWig or not by opening it up with, say, standard [UCSC Kent utilities][1] like `bigWigToBedGraph` or `bigWigToWig `, or other bigWig readers, and seeing if you get data back. Depending on what you're doing with the bigWig file, the trickier part can be how the original data was indexed. If the bigWig file was originally made from a bedGraph or BAM file, its coordinates will be 0-indexed. If the bigWig file was originally made from a wig file, its coordinates will be 1-indexed. How the file's coordinates were originally indexed may change how you work with them downstream for set operations, for instance. I think the only way to know about the source is to look at the header contained within the bigWig file, after extraction to human-readable form with UCSC tools. A bigWig file made from a bedGraph file will generally contain the header `#bedGraph section <coords>` in it somewhere (after conversion), for example. [1]: https://github.com/ENCODE-DCC/kentUtils