The measure passed by a vote of 303 to 121 Thursday.
The bill, known as the USA Freedom Act, would require phone companies to hold records.
Under the bill, the NSA would need a court order to search the records in terrorism investigations.
The vote is the first legislative effort at surveillance reform since NSA leaker Edward Snowden went public last year.
The Senate has yet to act on its version of the bill.
Copyright 2016 Nexstar Broadcasting, Inc. All rights reserved. This material may not be published, broadcast, rewritten, or redistributed.