McMillian, Justice. Allen Williams appeals his conviction for felony murder in connection with the death of his girlfriend, Betty Ranow.[1] Williams argues on appeal that the trial court erred in admitting evidence concerning his alleged beating of another person and in failing to conduct an evidentiary hearing to determine whether his statements to the police in connection with that incident were freely and voluntarily given before they were introduced at trial. Because we conclude that any error in the admission of this evidence was harmless, we affirm. The evidence presented at trial showed that in 2010, Williams and Ranow lived together in a house in Lawrenceville. At around 8:15 p.m. on December 18, Ranow approached a woman who was sitting in her car outside a doughnut shop near the house where Ranow and Williams lived. The woman, who did not know Ranow, described her as appearing “frazzled,” intoxicated, and inappropriately dressed for the cold December weather, as she was wearing only jeans, a t-shirt, and slippers. Ranow asked the woman for a ride to downtown Lawrenceville, and the woman, who had just come from church and who said she felt sorry for Ranow, agreed to Ranow’s request. They prayed together on the drive, and when they reached their destination, the woman removed her own yellow coat and gave it to Ranow to wear. The coat was clean with no stains on it at that time. At around 8:53 that night, Officer Brad Daugherty of the Lawrenceville Police Department (“LPD”) responded to a call for a welfare check on Ranow outside a restaurant in downtown Lawrenceville. Ranow, with whom Officer Daugherty was familiar, asked him to drive her home. Ranow was wearing a clean “mustard yellow” coat with no stains, and Officer Daugherty could smell alcohol on her person. Officer Daugherty drove Ranow to the house she shared with Williams. He dropped her off in front of the house but did not see her go inside. The next morning, at around 5:48 a.m., Williams called 911 from their house to ask for an ambulance. Brent Moss, an LPD patrol officer, was the first to arrive at the scene. Williams led Officer Moss inside the house where Ranow’s body was lying on the floor. Williams placed his hand on Ranow’s chest and told Officer Moss that Ranow was “barely breathing.” However, Officer Moss could see that Ranow was not breathing at all, and he directed Williams outside. Officer Moss smelled alcohol coming from Williams and testified that Williams appeared intoxicated. Williams told Officer Moss that when Ranow arrived home,[2] she had already been beaten. According to Williams, Ranow told him she had been drugged and assaulted and that the people who did that put her clothes in the trash can outside. Williams also told police that Ranow came home wearing a yellow coat that Williams had never seen before and that the coat was outside in a trash can. He told one officer exactly where to find that trash can. Williams further asserted that whoever gave Ranow the yellow coat also gave her the drugs and beat her up. Emergency medical personnel arrived at the house approximately three minutes after Officer Moss. One of the paramedics who responded to the scene testified that Ranow was deceased when he arrived. Her body was cold to the touch and showed signs of lividity where the blood had settled. There was a pool of dried blood around Ranow’s head and dried blood around her eyes. Officer Moss kept Williams from going back inside the house, and Williams became irate, leading the officer to call for backup. An LPD watch commander, who arrived at the crime scene in response to Officer Moss’s call, observed that Williams had blood on his head and that his right hand was “scuffed up.” The watch commander said that Williams appeared very nervous and fidgety and was trying to leave the scene, saying he had “other places to go.” The watch commander ordered that Williams be secured in the back of a patrol car and that a security sweep of the house be conducted. No one else was located inside. Police observed blood inside the house around Ranow’s body, blood smears on the front doorframe, and blood inside the front screened-in porch; only a few drops of blood were discovered outside the enclosed porch on the walkway leading to the porch door. There was no blood trail leading from the street and no blood in the yard, on the driveway, or on the street itself. The officers also recovered a yellow jacket with what appeared to be blood stains from an open trash container outside the house. At trial, the woman who gave Ranow a ride to downtown Lawrenceville identified it as the jacket she had given Ranow, and Officer Daugherty confirmed that the jacket appeared to be the one Ranow was wearing when he dropped her off at the house. Later, after Williams was transported to the police station, officers observed that Williams’s right hand was swollen, with discoloration to the back of his hand, scuff marks, and abrasions. He was taken to the hospital for treatment. The medical examiner who conducted the autopsy found severe bruising, abrasions, and swelling on Ranow’s body and tread marks on her face consistent with footwear. She also observed that Ranow had a “raccoon-eye appearance,” caused by the entrapment of blood in the soft tissues of the eyes, which, the medical examiner explained, is indicative of head trauma. The medical examiner discovered injuries to other parts of Ranow’s body as well and observed that Ranow had internal injuries corresponding to her external injuries, including eight broken ribs. She testified that all the injuries were indicative of blunt force trauma, and the injuries to Ranow’s head resulted in brain damage and diffuse bleeding within the scalp, factors that can lead to immediate loss of consciousness, concussion, and death. Based on the post-mortem examination, the medical examiner concluded that Ranow’s manner of death was homicide caused by blunt force trauma to her head, neck, and chest. The medical examiner also observed that Ranow’s body was dressed in clean clothes, indicating that they were not on her body at the time her injuries occurred and that the placement of the clothing on the body suggested that someone else had dressed her because one of Ranow’s arms was not fully in the sleeve of her sweater and her pants were not pulled over her hips. DNA recovered from Ranow’s body was tested and determined to match Williams’s DNA. At trial, the State presented evidence of Williams’s involvement in two previous physical altercations: a June 2010 incident involving Ranow and an August 2010 incident involving Ronald Strode, who lived in the Lawrenceville house with Ranow and Williams at the time.[3] With regard to the June 2010 incident, a retired LPD police officer testified that while he was still employed with the LPD, he came upon an altercation between Williams and Ranow at a gas station within walking distance of their house. During the altercation, the officer saw Williams hit Ranow in the chest a few times, almost causing her to fall down. The officer placed both Williams and Ranow under arrest for public drunkenness. The State presented two witnesses to testify about the incident involving Strode, which occurred on the night of August 12 to 13, 2010. Strode testified that sometime during the night, Williams came into Strode’s bedroom, asked Strode if he had seen Ranow, and used his fists to beat Strode in the face, head, and chest. Strode was able to break away from Williams and walk to the nearby house of a friend, who called an ambulance. Strode was taken to the hospital for treatment, which included brain surgery. The State also presented testimony from a uniform patrol sergeant from the Gwinnett County Police Department who investigated the Strode incident. He testified that he interviewed Williams after Strode identified Williams as his assailant. The sergeant testified that during the custodial interview, Williams said he returned home on the night of August 12 to 13, and, while still outside, saw Ranow and Strode through the window. Williams told the sergeant that Strode and Ranow were on the bed together, with Strode’s hand between Ranow’s legs. Williams said he went inside and confronted Strode about the condition of the house, which was in disarray, and Ranow told Williams that Strode had attempted to rape her. Williams admitted to the sergeant that, at some point during the night, he struck Strode once with an open hand, because Williams believed that he had interrupted an attempted rape. Williams explained that he was upset because Ranow did not appear to be resisting Strode and that she had been unfaithful to Williams many times in the past. 1. Williams asserts that the trial court erred in admitting evidence of the Strode incident pursuant to OCGA § 24-4-404 (b) (“Rule 404 (b)”)[4] for the purpose of showing identity. In order to introduce extrinsic evidence under Rule 404 (b), the State must show: (1) that the evidence is relevant to an issue in the case other than the defendant’s character; (2) that the probative value of the evidence is not substantially outweighed by its undue prejudice; and (3) that there is sufficient proof for a jury to find by a preponderance of the evidence that the defendant committed the other act. Strong v. State, 309 Ga. 295, 300 (2) (a) (845 SE2d 653) (2020). And “[w]hen evidence is offered pursuant to Rule 404 (b) to prove identity, it must satisfy a particularly stringent analysis.” Moon v. State, 312 Ga. 31, 53 (3) (c) (iii) (860 SE2d 519) (2021) (citation and punctuation omitted). The extrinsic act must be a “signature” crime, and the defendant must have used a modus operandi that is uniquely his. . . . Evidence cannot be used to prove identity simply because the defendant has at other times committed the same commonplace variety of criminal act. Brooks v. State, 298 Ga. 722, 725 (2) (783 SE2d 895) (2016) (citations and punctuation omitted). At an evidentiary hearing, the State proffered the Rule 404 (b) evidence relating to the Strode incident for the sole purpose of showing identity, and Williams’s counsel argued that the evidence was inadmissible for that purpose under Rule 404 (b) because there was no distinct criminal signature common to that incident and the charged crime; the two incidents were dissimilar in that Williams was trying to protect Ranow in the Strode incident, which has nothing to do with the crimes resulting in Ranow’s death; and in any event, the evidence was more prejudicial than probative. However, the trial court determined that the Strode incident was sufficiently similar to the crime in this case to be relevant to the issue of identity.[5] The trial court also found that there was sufficient proof to enable a jury to find by a preponderance of the evidence that Williams committed the Strode battery and the probative value of the evidence was “not substantially outweighed by undue influence.” Pretermitting whether the trial court abused its discretion in admitting the Strode-related evidence on the issue of identity, we conclude that any error in its admission was harmless in light of the other compelling evidence of Williams’s guilt. “Evidentiary errors require reversal only if they harm a defendant’s substantial rights.” Troy v. State, 312 Ga. 860, 862 (866 SE2d 394) (2021). See also OCGA § 24-1-103 (a). And, a “nonconstitutional error,” as alleged here, “is harmless if it is highly probable that the error did not contribute to the verdict.” Davenport v. State, 309 Ga. 385, 389 (2) (846 SE2d 83) (2020) (citation and punctuation omitted). See also Boothe v. State, 293 Ga. 285, 289-90 (2) (b) (745 SE2d 594) (2013). In order to determine whether the disputed evidence contributed to the verdict, we “review the evidence de novo, after setting aside any evidence that was admitted as a result of the error,” and we “‘weigh the remaining evidence as we would expect reasonable jurors to have done so as opposed to viewing it all in the light most favorable to the jury’s verdict.’” Troy, 312 Ga. at 862 (citing Peoples v. State, 295 Ga. 44, 55 (4) (c) (757 SE2d 646) (2014)). Even apart from the Strode-related evidence, the remaining evidence that Williams beat Ranow to death was strong. Officer Daugherty was the last person to see Ranow alive when he dropped her off at the house she shared with Williams sometime after 8:53 p.m. on December 18, 2010, and there was no evidence that anyone other than Williams and Ranow were at the house that night. Williams called 911 early the next morning, and told responding officers that Ranow had been beaten sometime before she arrived at the house and that the person who gave Ranow the yellow coat had provided the drugs and beat her. However, Officer Daugherty saw Ranow in the yellow coat and she had not been beaten. Also, most of the blood evidence was confined to the interior of the house. The evidence indicated that someone had dressed Ranow’s body in clean clothing after she was beaten, while the yellow coat Ranow was wearing when she was last seen alive was found covered in bloodstains in a trash can right outside the house, and Williams knew exactly where it was. Although Williams claimed that Ranow was alive when he called for help, testimony from police and medical responders indicated that she had been dead for some time when they arrived. In addition, one officer at the scene observed that Williams had injuries to his hand, which later required medical treatment, as well as blood on his head. Moreover, there was evidence of prior difficulties between Williams and Ranow from a prior incident a few months before when Williams had been observed, in public, hitting Ranow in the chest, and almost knocking her down, which demonstrated the nature of Williams’s relationship with Ranow and supported his motive to harm her. See Flowers v. State, 307 Ga. 618, 621 (2) (837 SE2d 824) (2020). Thus, to the extent that the State relied on the Strode- related evidence to prove identity, that evidence was largely cumulative of the much more probative evidence showing that Williams killed Ranow. See Virger v. State, 305 Ga. 281, 296 (8) (b) (824 SE2d 346) (2019) (where Rule 404 (b) evidence was cumulative of other properly admitted evidence, any error in its admission was harmless); Douglas v. State, 303 Ga. 178, 183 (3) (811 SE2d 337) (2018) (same). Further, the trial court, using a charge approved by the parties, instructed the jury that the Strode-related evidence could not alone support a finding that Williams committed the acts alleged, and that the jurors “could not convict a person simply because [they] believe he may have committed the alleged similar acts in the past.” The trial court gave a version of this instruction four times: in its pretrial charge to the jury, before the introduction of the evidence of the June 2010 incident with Ranow, before the evidence of the Strode incident, and in the final jury charge. Because “[w]e ordinarily presume that jurors follow such instructions,” any unfair prejudice from the admission of the Strode-related evidence was reduced. See Bentley v. State, 307 Ga. 1, 8 (2) (834 SE2d 549) (2019). See also Howell v. State, 307 Ga. 865, 875 (3) (838 SE2d 839) (2020) (same). Therefore, we conclude that, under the circumstances of this case, it is highly probable that the admission of the evidence concerning the Strode incident did not contribute to the jury’s verdict. See Howell v. State, 307 Ga. 865, 875-76 (3) (838 SE2d 839) (2020) (404 (b) evidence erroneously admitted harmless in light of otherwise strong evidence of defendant’s guilt); Jackson v. State, 306 Ga. 69, 81 (2) (c) (829 SE2d 142) (2019) (same); Scott v. State, 357 Ga. App. 289, 295 (1) (b) (850 SE2d 477) (2020) (erroneous admission of 404 (b) evidence to show identity harmless in light of other evidence of defendant’s guilt). 2. Williams also contends that the trial court erred by admitting his statements to police about the Strode incident without first conducting a Jackson-Denno[6] hearing to determine whether those statements were voluntary. We need not decide whether the trial court erred, though, because we determine that any error in the admission of the evidence was harmless. “Even an error of constitutional magnitude may be considered harmless if the State can prove beyond a reasonable doubt that the error did not contribute to the verdict[.]“ Dunn v. State, 312 Ga. 471, 480 (3) (863 SE2d 59) (2021) (citation and punctuation omitted). See also Armstrong v. State, 310 Ga. 598, 605 (3) (852 SE2d 824) (2020). In the statements at issue, Williams denied that he inflicted serious injury on Strode – admitting only that he slapped him once open-handed – and attempted to justify this action by asserting that Strode had attempted to rape Ranow. We have determined that the admission of the Strode-related evidence, which would include the statements Williams made justifying the attack, was harmless under the standard for nonconstitutional error. We further conclude under the standard for assessing errors of constitutional magnitude that the record shows beyond a reasonable doubt that the evidence of Williams’s self-serving statements to the Gwinnett County Police sergeant did not contribute to the verdict and thus that any error was harmless.[7] Judgment affirmed. All the Justices concur.