Duda was selected by the New York Mets in the seventh round of the 2007 Major League Baseball draft, as the 243rd overall selection. He began his professional career in 2007 with the Single-A Brooklyn Cyclones of the Short Season Single-A New York–Penn League, where he batted.299, with 32 runs batted in, 32 runs, and 4 home runs. During the following winter, he played on the Waikiki BeachBoys of Hawaii Winter Baseball, batting.340, with 13 runs batted in, 12 runs, and 3 home runs. In 2008, he played for the St. Lucie Mets of the Single-A Florida State League, where he batted.263, with 66 runs batted in, 58 runs, 11 home runs. For the 2009 season, Duda was promoted to the Double-A Binghamton Mets, where he batted.281, with 53 runs batted in, 49 runs, and 9 home runs. During the fall of 2009, Duda played for the Surprise Saguaros of the Arizona Fall League, where he in 5 at bats batted.400, with 2 runs batted in and no home runs. Duda began the 2010 season continuing to play for the Double-A Binghamton Mets, and was promoted to the Triple-A Buffalo Bisons on June 14. While in Buffalo, Duda homered in five consecutive games, tying a Bisons record. In 70 games for Buffalo, Duda hit 17 home runs, 2 triples, 23 doubles, and had 53 runs batted in, while compiling a.314 batting average. At the end of the season, the Bisons named him their Most Valuable Player.
New York Mets
2010
On August 31, 2010, the Mets announced that Duda would be added to the major league roster as part of their September call-ups. Duda made his major league debut on September 1, against the Atlanta Braves, facing starting pitcher Tommy Hanson, whom he played against in high school. He went hitless in three at-bats, but made a "stellar sliding catch" in the outfield. Duda had to leave the game in the eighth inning due to hamstring cramps, which he said came from dehydrating while on the plane from Buffalo to Atlanta. On September 17, 2010, again batting against Hanson, Duda hit his first career major-league home run. Former Mets manager Jerry Manuel watched Duda during batting practice when he was first called up to the Majors and noted that Duda reminded him of Magglio Ordóñez or Moisés Alou. With Ike Davis starting at first base, Duda's primary position in the minor leagues, all of Duda's playing time came in left field. He batted.202 for the year. The Mets named Duda their Sterling Organizational Player of the Year in 2010.
2011
On April 10, 2011, Duda was optioned to the Triple-A Buffalo Bisons. On August 8, 2011, batting in the cleanup spot for the first time in his major league career, Duda picked up his first major-league walk-off hit, with a two-run single off of Padres closer and former Mets reliever Heath Bell. He batted.292 for the season.
2012
Duda was selected as the starting right fielder for the Mets to begin the 2012 campaign. On April 7, 2012, Duda had his first multi-homer game, hitting two solo shots off the Atlanta Braves in a 4–2 Mets' victory. Going into June 26, Duda was hitting.269 with a team-high 11 home runs, yet from June 26 to July 24 Duda was hitting.138 with one home run and a.200 slugging percentage. The sub par batting performance coupled with poor fielding prompted his being demoted to Triple-A Buffalo. On August 26, the Mets recalled Duda from Buffalo. It was the 26-year-old's second stint in the majors during the 2012 season. He batted.239 for the season. In October, Duda broke his right wrist while moving furniture at his home in South California, and had surgery on November 5. However, Duda returned in time for spring training.
2013
On June 23, Duda was placed on the 15-day disabled list because of a strained muscle between his ribs. Following a rehabilitation stint, Duda was activated and then immediately optioned to the Triple-A Las Vegas 51s. Duda was recalled on August 24. He batted.223 for the season. With Ike Davis still occupying first base, Duda played the majority of his defensive games in the corner outfield positions for the fourth consecutive season.
2014
On April 4, Mets manager Terry Collins announced that Duda would get the bulk of the playing time at first base over Ike Davis. Later that night, Duda hit two 2-run home runs in a 4–3 victory against the Cincinnati Reds. On April 18, after a positional battle which lasted several seasons and a struggle with valley fever, Ike Davis was traded to the Pittsburgh Pirates for Zack Thornton and a player to be named later, later revealed to be Blake Taylor. This was done in order to make room for Duda as the starting first baseman. On August 1, Duda hit his 20th home run of the season against the San Francisco Giants' pitcher Ryan Vogelsong. Duda had never reached the 20 home run mark before the 2014 season. On September 28, Duda hit his career high 30th home run of the season. That home run put him at 92 runs batted in, another career high. He finished the year leading the Mets in home runs, RBI, on-base percentage, slugging percentage and total bases, his first time doing so any of those categories. In November, Duda represented Major League Baseball in the 2014 Major League Baseball Japan All-Star Series. He went 4-for-10 with two walks in the exhibition series.
2015
On July 29, during a 7–3 loss to the San Diego Padres, Duda became the eleventh Mets player to hit three home runs in a single game, and only the second Met to do so at home after Kirk Nieuwenhuis had accomplished the feat less than a month before. Duda set a Mets franchise record on August 1 when eight of his consecutive hits came in the form of home runs; he and teammate Noah Syndergaard were named National League Co-Players of the Week for the week ending on August 2. On September 26, Duda hit his first career grand slam in the Mets' 10–2 victory over the Cincinnati Reds. That victory clinched the NL East division title for the New York Mets. On the final day of the season, Duda was hit by a pitch from the Washington Nationals' Tanner Roark, giving him 14 total HBP on the season and breaking the Mets single season record, previously shared by John Olerud and Ron Hunt. For the season, he had the highest fly ball percentage, and the lowest ground ball percentage, of all major league hitters. In the fourth game of the 2015 NLCS, Duda batted in five runs to help the Mets sweep the Chicago Cubs and advance to the 2015 World Series. His five RBI was tied for the most by a Mets player in a single postseason game, a feat previously accomplished by Curtis Granderson in the 2015 NLDS, Carlos Delgado in the 2006 NLCS, Edgardo Alfonzo in the 1999 NLCS and Rusty Staub in the 1973 World Series. Duda's errant throw to home in the 9th inning of Game 5 of the World Series with 2 outs and the Mets leading 2–1 allowed Eric Hosmer to score the tying run, and cost the Mets the game when the Kansas City Royals won in 12 innings, completing their World Series championship. Duda ultimately went 5-for-19 with no extra base hits, two walks and seven strikeouts in the series.
2016
On January 12, 2016, the Mets re-signed Duda to a 1-year contract. On May 23, the Mets placed Duda on the 15-day disabled list with a stress fracture in his lower back. He was replaced on the roster by Ty Kelly. Duda was batting.231 with a.297 OBP and.431 SLG with seven HR and 19 RBIs in 39 games.
2017
On April 3, Duda was the starting first basemen for the Opening Day, going 1–3, logging one walk, one strike-out and hitting a three-run double in the bottom of the seventh off Eric O'Flaherty against the Atlanta Braves. On April 21, the Mets placed Duda on the 10-day disabled list, two days after he suffered a hyperextended left elbow in a collision at first base with Philadelphia Phillies baserunner César Hernández. Through 75 games, Duda hit.246 with 17 home runs and 37 runs batted in.
Tampa Bay Rays
On July 27, 2017, Duda was traded to the Tampa Bay Rays for minor league pitcher Drew Smith. He batted.175 for Tampa Bay. He became a free agent after the season.
Kansas City Royals
Duda signed a one-year contract with the Kansas City Royals on February 28, 2018. In his first at-bat as a Royal, he hit a three-run home run on Opening Day in the first inning against James Shields. Duda was the Royals' designated hitter for the first half of the season, hitting.242 with 13 home runs and 48 runs batted in.
Atlanta Braves
The Atlanta Braves acquired Duda and cash considerations from the Royals in exchange for a player to be named later or cash considerations on August 28, 2018.
On February 9, 2019, Duda signed a minor-league contract with the Minnesota Twins that included an invitation to spring training. Duda was released by the Twins on March 20, 2019.
Second stint with Royals
On March 22, 2019, Duda signed a minor-league contract with the Kansas City Royals. He was placed on the injured list on April 26 with a lumbar strain injury. He was designated for assignment on July 27, 2019 after hitting.171 in 119 appearances. He was then released outright on the next day.
Second stint with Braves
On August 5, 2019, Duda signed a minor league deal with the Atlanta Braves. The team released Duda on August 27, 2019.