In 1572, the evil witch Malkin is being locked up on a high mountain by Spook Gregory. Spooks are fighters of evil creatures, which is why it’s Gregory’s duty to protect the world from witches. Many years later a full-blood moon appears and allows Malkin to get her powers back.
Now she can transform into a flying monster and burst out of the cell to be free again. Meanwhile Gregory is drinking at a tavern when his apprentice William comes to tell him about an infected girl at the church. Gregory explains he's taking a break and a man calls him out for not helping.
When the guy touches his shoulder, Gregory pushes him off and starts fighting him with his mug. He even gives the man a sword to make the fight more exciting and continues to hit him with the mug to bring him down before pouring the alcohol on him. Afterward Gregory and Willian travel to the local church.
Once they’re properly armed, they enter the building and find a possessed child chained to a column. She uses her power to throw a cross at them but Gregory easily catches it. After the father confirms she’s been like this since last night, the girl starts talking with a demonic voice to inform Gregory that Malkin has escaped.
Realizing the witch is the one possessing her, Gregory puts a bag of magic powder around the girl’s neck which causes her to collapse. Dark energy comes out from her body and now she sounds like a child again, so her parents take her away. Then the dark energy comes together to form Malkin, who starts taunting Gregory and tries to charm William to no avail.
When Gregory gives the sign, William throws an axe at the rope in the ceiling to make the bell fall, but Malkin dodges it and transforms into a beast to slash Gregory’s chest before trying to fly away. William hits her with an arrow and throws a silver net at her, so Malkin flies through the door to drag him and makes him hit his face against the wall. However William doesn’t let go of the net and holds on to it long enough for Gregory to catch up to help.
The men pull together and the silver in the net weakens Malkin until she’s forced to take her human form and falls. They put her inside a cage but when Gregory is in the middle of closing it, Malkin grabs William and pulls him into the cage with her. She chokes him and fills him with darkness until he’s dead, so Gregory lights the whole cage on fire for revenge.
Unfortunately Malkin transforms into a beast again and breaks the cage to fly away. In a forest nearby Tom is trying to hunt but his sister scares the animals away when she reminds Tom there are farming chores to do. Tom isn’t a good hunter but he keeps trying because he wants more in life than feeding pigs.
Suddenly Tom starts shaking and has a bunch of visions that show him Gregory and a mysterious woman. Tom has these visions often so his mother doesn’t hesitate to comfort him. Moments later Gregory shows up at the farm and the mother immediately hides her necklace.
Gregory explains he’s looking for a boy who is the seventh son of a seventh son and demands to be fed. Tom admits he’s the seventh son and Gregory offers the family money to take him away. The mother thinks it’s too dangerous but Tom wants to do it because he recognizes Gregory from his visions.
Before they leave, the mother gives Tom her necklace, saying he must wear it at all times. Meanwhile Malkin returns to her lair to find her sister Lizzie badly burnt. Malkin immediately heals her, then she uses her magic to quickly repair the place.
After a long boat trip, Tom and Gregory make it to the city. Gregory gives Tom some money and tells him to buy supplies while he goes to the tavern. While Tom looks around, he discovers the locals have captured a woman named Alice and intend to burn her because they think she’s a witch.
Tom recognizes her as the girl from his visions so he rushes in to save her. He tells everyone he’s Gregory’s apprentice and that he’ll get rid of the witch, so they let him take her away. Once they reach a private spot, Tom cuts the ropes and Alice warns him that Gregory’s apprentices always get killed.
Before she leaves, she asks Tom not to tell Gregory about her. In the evening Alice goes to the evil lair, revealing she’s Lizzie’s daughter. Malkin is glad to hear Alice has been spying on Gregory and announces that they have to summon all the dark creatures in the land to wait for the full moon blood.
Back to Tom, he’s crossing the woods with Gregory and keeps getting startled by creepy ghosts. Gregory explains Spooks only kill aggressive monsters and that they need to stop Malkin soon. Tom starts trembling and has a vision of Malkin’s escape from the cage.
He passes out and doesn’t wake up until next morning to discover he and Gregory are on a boat with a troll named Tusk. Eventually they reach land and visit Gregory’s home, which is full of weapons, books, and advanced contraptions. Tom finds a tapestry that shows the Falcons, an order of noble knights who fought the forces of darkness and trained all the seventh sons of seventh sons.
There used to be thousands of them, but nowadays the only one left is Gregory. An apprenticeship usually lasts ten years, however Gregory says he only has a week to train Tom because they must stop Malkin before the full blood moon. This event happens once every century and last time it made the witches so strong that they started a war.
That night Tom is woken up by Gregory’s voice asking for help. He goes to investigate and finds some armor with a skeleton inside, but nothing else. When Tom turns around to leave, the armor suddenly glows and starts moving.
Tom begins running as the armor comes after him, destroying any door that gets in its way. It throws a spear that Tom dodges before climbing on some contraptions to gain height and reach a platform. The armor uses a chain to climb to the platform too and begins attacking with its sword, destroying its surroundings since Tom keeps dodging.
Then the armor throws Tom off the platform and jumps after him to grab him, but before it can kill him Gregory disarms it. Using his staff, Gregory quickly overpowers the armor and hits it until he destroys the darkness inside. Afterward Gregory scolds Tom because he was supposed to stay in his room, so he’s already failed his first test.
Then Gregory throws the staff at Tom before attacking him with a sword while taunting him with bad comments about his family. Tom isn’t a very good fighter yet and Gregory quickly corners him with a sword to the neck before announcing he’s worthless. A frustrated Tom throws a sword right next to Gregory’s head, which convinces him to continue the training.
Gregory teaches Tom about Malkin’s demonic minions and her powerful lieutenants. Tom also gets lessons on knife throwing, the metals and herbs that hurt creatures of darkness, how to identify each type of monster, and how to protect himself from spells. At the evil lair, Malkin’s lieutenants are arriving with an army of demonic minions.
When one of the minions looks at Malkin, she immediately kills it for being disrespectful. This makes Alice realize Malkin doesn’t care about her own people and tries to warn her mother, but Lizzie assures her Malkin won’t hurt her family. That night, Tom again wakes up when he hears a noise and finds Alice bathing in the lake.
She asks Tom to turn around before she comes out and uses magic to dress up, hoping to keep the secret. However when Tom turns and grabs her hand, there’s a bright spark and Alice has no choice but to confess. She’s a witch, and it’s said that if a witch touches a man under the moonlight and there’s a spark, it means he’s her true love.
Alice also points out not all witches are evil like Gregory says and admits she’s been spying on him. They’re about to share a kiss when they're interrupted by the noises Tusk makes while having a nightmare. When Tom turns around to check, Alice disappears.
The next morning the group hears the city bells ringing, which means the Spooks are being summoned. At that moment a group of knights shows up to take them to the city, which will take them two days. When they get there, a priest tells them about a terrifying monster that no man dares to approach.
The best is inside a cage and looks like a bear, but Gregory immediately recognizes him as Urag, Malkin’s most bloodthirsty lieutenant. Gregory sends all the soldiers away and makes sure the doors are secured before announcing he’ll fight the beast alone. Urag breaks the cage and tries to attack Gregory, who throws silver powder to force him back into his human form.
Then a hand-to-hand fight begins and both men show outstanding skill. When Urag corners Gregory against a gate, Tom throws an object at Urag’s head to make him drop his master. Then Urag starts beating Tom up so Gregory surprises him from behind to continue their fight.
This time Gregory has the upper hand so Urag climbs the walls to get away. Gregory makes Tom jump on top of a cage to make him act as bait. Then Tom jumps off and Gregory cuts the rope, causing the cage to fall with Urag and crush him on the floor.
Next Gregory tries to choke Urag with a chain, but Urag transforms into a bear again. Tom throws more silver powder to reverse the spell before he and Gregory work together to push Urag into the cage and chain him up. Now the knights can pour oil into the room and Gregory asks Tom to start a fire to kill Urag for good.
However Tom doesn’t dare to kill a person and Gregory has to do it himself. After Urag burns to death, Gregory tells Tom he’s useless if he can’t kill witches and they split. All this is seen by Alice, who approaches Tom in private.
She’s been researching the spark and explains sometimes it can mean a shared destiny, but other times it’s just some dust. Alice also reveals that Gregory used to be in love with a witch. Suddenly Tom kisses her and the new couple spends the night cuddling.
Tom wants to run away with Alice and take her somewhere safe, but Alice says there isn’t such a place. This triggers a vision that shows the world overtaken by darkness and Malkin killing Gregory. A worried Tom decides to return to his master and kisses Alice goodbye.
Meanwhile Malkin receives the rest of her lieutenants, who inform her of Urag’s death. Malkin orders Lizzie to bring him Gregory, so Lizzie turns into a bird and flies off. The following day Tom finds Gregory, who admits he used to love Malkin.
She wasn’t always evil, but fear and hatred changed her. When she found out Gregory married someone else, she killed the wife out of jealousy. Gregory immediately captured Malkin but couldn’t bring himself to kill her, so he locked her up instead.
He regrets showing her mercy because now Malkin is terrorizing the world again. Gregory shows Tom his wife’s grave and explains he’s hard on him because he doesn’t want him to make the same mistake. The duo continues to travel together but they stop the carriage when Tusk shows up to give them a warning.
Suddenly the ground starts trembling and breaking, causing the horses to run away in fear. A monster known as boggart bursts out and pushes the carriage, tossing the heroes to the ground. Gregory says boggarts can’t be fought and urges everyone to run.
The boggart throws the carriage at them, causing them to fall and roll down the hill. Tusk roars at the boggart, who freezes for a second before slapping the troll away. Gregory and Tom cross a tunnel in the mountain only to get stuck on the edge of a cliff.
The boggart is now reaching through the tunnel so the duo decides to jump into the river. There’s a fisherman on a raft who helps them out and Gregory thinks they’re safe, but the boggart suddenly jumps into the water too and makes everyone fall from the raft. The beast immediately grabs Tom, who stabs its hand with a knife to force it to let go.
Then Tom climbs on top of the creature’s body and stabs its back. The boggart can’t swim because of the pain and both it and Tom are pushed by the current until they fall down a waterfall. The beast hits a rock and dies for good while Tom lands in the water, so he manages to swim to the shore.
At that moment he’s found by Lizzie, who tells him to leave Alice alone and threatens him with a sword. Tom grabs the blade at the same time his necklace activates, shooting some magic that disarms the witch. Lizzie recognizes the stone and says it belongs to Malkin, so she transforms into a bird and flies off to warn her.
Minutes later Tom reunites with Gregory, who sees the necklace and recognizes it as the Umbran stone, the witches’ most sacred talisman. It strengthens their powers and makes their illusions seem more real. If Tom’s mother had it, it means she’s the witch who stole the stone from Malkin and explains Tom’s visions.
At the lair, Malkin is trying to convince Alice that Tom is as cruel as Gregory. Alice swears he isn’t, so Malkin offers her a deal: if Alice gets the stone from Tom, she won’t kill him. Then Malkin uses her magic to charge up her lieutenants and sends them to attack the city.
The front gates explode before the lieutenants land and begin killing people all over the place. One of them transforms into a big monster while another one uses multiple arms to fight with swords. Tom’s mom leaves her daughter with a friend before using her power to throw a pitchfork at a lieutenant, getting him stuck on a pole.
Then she steals his staff and kills him with it. Malkin is nearby killing knights and senses the magic, so Tom’s mom tries to attack first. However Malkin captures her with her tail and burns the woman to death.
In the mountains Alice waits for Tom to be alone to approach him. After a kiss, she asks him to run away together and Tom admits he loves her. The conversation is interrupted by Gregory, who captures Alice by throwing some bolas.
He insists she’s a spy, but Tom doesn’t believe him and cuts the rope to let her escape. A furious Gregory grabs Tom and shows him the stone is missing, which means Alice only kissed him to steal it. Tom runs into the woods to try to find Alice only to be surrounded by Lieutenant Radu and his minions.
No matter how hard Tom fights there are too many of them so Gregory and Tusk join the battle as well. After enough minions are knocked out, Tom’s group tries running away but finds the way blocked by a cliff. A bunch of minions appear with a trunk and push Tusk off the edge before catching Tom with some rope around his legs.
As they drag him down the cliff, Gregory offers his staff to help him up. Unfortunately Tom slips and falls too. Radu uses the distraction to throw a chain at Gregory and drag him into a net.
The lieutenant wants to kill Gregory, but he has orders to deliver him alive. Meanwhile Tom has survived the fall and sees a vision of his mother’s death. Her ghost appears next to him and tells him to fill his heart with courage because he’s the only one who can use the stone to stop Malkin.
Ready to fight, Tom finds Gregory’s staff and helps Tusk, who is still hanging off the edge. That night in the lair Radu uses blades to cut off Gregory’s ropes and kicks him out of a cage to send him to see Malkin. Radu informs the witches that Tom died when he fell and Lizzie tells her daughter it was for her own good, but Alice still gets angry and disappointed.
Using the stone, Malkin tries to hypnotize Gregory to make him join her. Gregory comes closer but before they can kiss, Alice reaches between them and steals the necklace. She dodges a few guards and runs away while the spell breaks, so Gregory screams in panic.
Malkin grabs him with her tail and throws him against a building before transforming into a beast to fly after Alice. Lizzie begs her not to kill her and is ignored, so she transforms as well to follow them. When Malkin is about to attack Alice, Lizzie grabs her wing and brings her down, causing them both to crash against some columns.
One of the columns starts falling so Alice rolls out of the way, accidentally leaving the necklace under the debris. Lizzie falls when Malkin begins breathing fire but the witches won't stop fighting. Radu breaks the ground as he transforms into a big beast and roars in Gregory’s face.
At the same time Alice tries to hide and is found by Tom, who threatens her with a knife as he asks for the stone. She explains she lost it and that she only stole it to protect him. When a minion finds them, Tom throws a knife at his face and gives away their location to the other enemies.
Tusk jumps in to block them and now he and Tom can fight the minions hand-to-hand. Tom uses Gregory’s staff and Tusk his amazing strength. Alice also has to defend herself and Malkin tries to use the distraction to attack her, but Lizzie tackles her in the air.
Tusk continues to fight the minions while Tom is stuck with a very fast lieutenant who keeps slashing him with her knife. She stops moving to transform into a wild cat, giving Tom enough time to find the necklace. He puts it on and activates the power of Gregory’s staff, which allows him to burn down the lieutenant in just a few seconds.
Alice is still running around and after killing a minion, she encounters a lieutenant too. He quickly overpowers her and is about to kill her, but Tom attacks him with the staff and burns him to death. Meanwhile the Radu beast captures Gregory, who tells him he has no honor for not fighting him as a man.
Radu transforms into his human form and gives Gregory a blade so they can fight in equal conditions. It seems their skills are similar, however Gregory soon gets a big slash on his stomach and has to hide. Radu brings down a column to force Gregory to come out, so the Spook quickly retaliates with the chain blade and finally brings his opponent down to kill him.
In the sky Malkin grabs Lizzie to bite her neck and stab her with her tail. Lizzie immediately stabs her back and both witches cry in pain as they fall to the ground. They both go back to their human forms and when Lizzie begs for Alice’s life, Malkin calls her a traitor and kills her.
Afterward Malkin enters her lair and Gregory tells Tom he must do this alone. He goes inside and gets ready to stab Malkin, who is only pretending to feel weak to grab him by the neck. Before she can kill him, Tom shows up and throws a knife that finally kills her.
After Malkin whispers something about a curse, Tom sets her on fire. Sometime later Gregory uses his staff to burn a tattoo on Tom’s hand, which officially marks him as a Spook. Alice comes to see him and wonders if the spark had only been dust, so Tom kisses her to prove his love is real.
However he’s chosen the life of a Spook and must leave. Gregory can now retire and leaves the staff, his home, and Tusk under Tom’s care. At that moment the bells ring in the city, summoning Tom for his first job.