DEBUG: Raw major_slug = ""
DEBUG: Initial offers_url = "https://www.collegefactual.com/majors/social-sciences/criminology/offers.json", major_slug = ""
DEBUG: After cleaning major_slug = ""
DEBUG: Before URL cleaning = "https://www.collegefactual.com/majors/social-sciences/criminology/offers.json"
DEBUG: After TrimSuffix = "https://www.collegefactual.com/majors/social-sciences/criminology/offers.json"
DEBUG: After HTTPS placeholder = "HTTPS_TEMP_PLACEHOLDERwww.collegefactual.com/majors/social-sciences/criminology/offers.json"
DEBUG: After slash cleaning = "HTTPS_TEMP_PLACEHOLDERwww.collegefactual.com/majors/social-sciences/criminology/offers.json"
DEBUG: After URL cleaning = "https://www.collegefactual.com/majors/social-sciences/criminology/offers.json"
DEBUG: offers_url = https://www.collegefactual.com/majors/social-sciences/criminology/offers.json
DEBUG: major_slug = ""
DEBUG: offers_url is valid, proceeding to fetch data
DEBUG: offers_data.offers found, count = 10
DEBUG: Specific major detected (cip4 = 45.04), keeping min_relevance at 0.8
DEBUG: Starting relevance filtering - min_relevance = 0.8, max_relevance = 1
DEBUG: Checking offer "Criminology (I Have a HS Diploma or Associate Degree)" with relevance 1
DEBUG: ✓ Offer "Criminology (I Have a HS Diploma or Associate Degree)" ACCEPTED (relevance 1)
DEBUG: Checking offer "Grad Cert - Criminology (I Have a Bachelors)" with relevance 1
DEBUG: ✓ Offer "Grad Cert - Criminology (I Have a Bachelors)" ACCEPTED (relevance 1)
DEBUG: Checking offer "BS in Criminal Justice - Criminology & Crime Analysis" with relevance 1
DEBUG: ✓ Offer "BS in Criminal Justice - Criminology & Crime Analysis" ACCEPTED (relevance 1)
DEBUG: Checking offer "AS in Criminal Justice" with relevance 0.8
DEBUG: ✓ Offer "AS in Criminal Justice" ACCEPTED (relevance 0.8)
DEBUG: Checking offer "BS in Criminal Justice" with relevance 0.8
DEBUG: ✓ Offer "BS in Criminal Justice" ACCEPTED (relevance 0.8)
DEBUG: Checking offer "MS in Criminal Justice" with relevance 0.8
DEBUG: ✓ Offer "MS in Criminal Justice" ACCEPTED (relevance 0.8)
DEBUG: Checking offer "Criminal Justice & Law Bachelors Programs (I Have a HS Diploma or Associate Degree)" with relevance 0.6
DEBUG: ✗ Offer "Criminal Justice & Law Bachelors Programs (I Have a HS Diploma or Associate Degree)" REJECTED (relevance 0.6)
DEBUG: Checking offer "Grad Cert - Law Enforcement (I Have a Bachelors)" with relevance 0.6
DEBUG: ✗ Offer "Grad Cert - Law Enforcement (I Have a Bachelors)" REJECTED (relevance 0.6)
DEBUG: Checking offer "Science & Engineering Bachelors Programs (I Have a HS Diploma or Associate Degree)" with relevance 0.6
DEBUG: ✗ Offer "Science & Engineering Bachelors Programs (I Have a HS Diploma or Associate Degree)" REJECTED (relevance 0.6)
DEBUG: Checking offer "Science & Engineering Diploma Programs (I Have a HS Diploma or Associate Degree)" with relevance 0.6
DEBUG: ✗ Offer "Science & Engineering Diploma Programs (I Have a HS Diploma or Associate Degree)" REJECTED (relevance 0.6)
DEBUG: relevant_offers count = 6
DEBUG: relevant_offers > 0, checking for ESYOH offers
DEBUG: ESYOH filtering - found 2 ESYOH offers with relevance >= 0.8
DEBUG: esyoh_offers count = 2
DEBUG: ESYOH offers found, rendering ESYOH widget
DEBUG: most_relevant_only = true, filtering for most relevant
DEBUG: Found 2 offers with relevance >= 1.0
2026 Best Value Criminology Schools in New Hampshire
Below are the schools that deliver the strongest value in criminology, balancing cost against outcomes.
Best Value Criminology Schools
For return on investment in criminology, no school beat Saint Anselm College this year. Saint Anselm College is a mid-sized private not-for-profit school located in the suburb of Manchester. Students from in state pay about $48,920 in tuition and fees. Criminology graduates carry a median of $27,000 in student loans. Soon after graduation, criminology degree recipients from Saint Anselm College generally make around $46,814. Set against $27,000 in median debt, that is a healthy payoff. Saint Anselm College admits about 78% of applicants.