SQLAlchemy
Ranked 2 of 11 ORMs by recommenders
Recommended as a flexible Python SQL toolkit and ORM for developers who know SQL. Critics find it complicated and its lazy loading surprising.
Recommended as a flexible Python SQL toolkit and ORM for developers who know SQL. Critics find it complicated and its lazy loading surprising.
61 people gave an opinion
- recommend it
- 33
- criticize it
- 28
- approval share
- 54%
Recommended in 11 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: recommended
- May 2026: recommended
- June 2026: recommended
- July 2026: recommended
- August 2026: recommended
- September 2026: not recommended
- October 2026: recommended
- November 2026: not recommended (month in progress)
Why it doesn’t carry the badge
- 33 people recommend itNeeds 10 or more, met.
- 1.1 recommenders for every criticNeeds 2 to 1 or better, not met.
- Recommended in 11 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Precise control over generated SQL
“Alchemy's strong point is "here's an existing database; let users who grok DB theory query it as efficiently and ergonomically as possible."”
Comment from 16 Mar 2026 in “Show HN: Oxyde – Pydantic-native async ORM with a Rust core” “I am 100% sure what SQL do I want it to produce and what SQL will a particular ORM invocation produce.”
Comment from 4 Jul 2026 in “What ORMs have taught me: just learn SQL (2014)” “at no point were we married to it, you could generate your query any which way you please”
Comment from 12 Oct 2026 in “SQLAlchemy 2.1.0 Released” - Comment from 25 Oct 2026 in “Show HN: Farol – A risk map of a pull request for the person who approves it”
- Comment from 30 Aug 2026 in “A better SQL in 11 lines of code”
Query builder usable without ORM
“at no point were we married to it, you could generate your query any which way you please”
Comment from 12 Oct 2026 in “SQLAlchemy 2.1.0 Released” “SQLAlchemy has an eDSL of SQL, so you can skip the whole ORM/table mapping layer”
Comment from 25 Oct 2026 in “Show HN: Farol – A risk map of a pull request for the person who approves it” “Yeah, you can use SQLAlchemy like this. It's called the data mapper pattern.”
Comment from 5 Jul 2026 in “What ORMs have taught me: just learn SQL (2014)” - Comment from 30 Apr 2026 in “Postgres's lateral joins allow for quite the good eDSL”
Capable with a strong toolchain
“Alchemy is the greatest thing in the world when you need its exact features.”
Comment from 5 Feb 2026 in “AI Is Killing B2B SaaS” “SQLAlchemy is undeniably the superior and far more capable ORM”
Comment from 10 Dec 2025 in “Django: what’s new in 6.0” “sqlalchemy and alembic is a great toolchain outside of django”
Comment from 26 Jul 2026 in “Some more things about Django I've been enjoying” - Comment from 29 Jan 2026 in “Notes on Starting to Use Django”
What people warn about
Each mark is one comment
Complicated API and messy code
“kludgy as it tries to translate SQL into a new language”
Comment from 28 Nov 2025 in “Python is not a great language for data science” “I once tried using SqlAlchemy but I couldn't help asking myself why it felt so complicated compared to Django.”
Comment from 26 Jul 2026 in “Some more things about Django I've been enjoying” “What function signature isn't going to look messy with 36 keyword arguments.”
Comment from 9 Jun 2026 in “Are you expected to run five Python type-checkers now?” - Comment from 8 Jun 2026 in “Are you expected to run five Python type-checkers now?”
Lazy loading causes surprises
“So many things just don't really work in this world, like old-school lazy fetching in SQLAlchemy.”
Comment from 8 Jun 2026 in “Learn PHP in 2026 (Yes, Really)” “undisciplined (in terms of perf and cost) new ORM code being deployed (SQLAlchemy)”
Comment from 30 Nov 2025 in “You want microservices, but do you need them?” “they're always lazy, so you never really know when the N+1s are going to happen”
Comment from 22 Dec 2025 in “The Rise of SQL:the second programming language everyone needs to know” Compared unfavorably with Django's ORM
“Lol I never knew django orm is faster than SQLAlchemy. But having used both that makes sense.”
Comment from 13 Mar 2026 in “Show HN: Oxyde – Pydantic-native async ORM with a Rust core” “the ORM blows SQLAlchemy out of the water, in terms of being able to produce quality software, quickly”
Comment from 6 Dec 2025 in “Django 6” “I prefer a Django-like ORM to SQLAlchemy in spite of all the praises it gets”
Comment from 15 Nov 2025 in “Blending SQL and Python with Sqlorm” Plain SQL is simpler
“I can guarantee that someone equipped with a good foundation in SQL will be more successful debugging a Sequelize based application, than someone who has relied on SQLAlchemy”
Comment from 22 Feb 2026 in “Postgres Is Your Friend. ORM Is Not” “Every time I use them I think to myself it would be easier to just write SQL myself”
Comment from 7 Feb 2026 in “Software Engineering Is Back”
Other ORMs people recommend
The four most recommended other ORMs, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| Entity Framework Core | 35 | 19 | 65% | 12 | — | — |
| SQLAlchemyThis page | 33 | 28 | 54% | 11 | — | — |
| Drizzle ORM | 25 | 6 | 81% | 10 | — | Approved |
| Dapper | 19 | 3 | 86% | 7 | — | Approved |
| Oxyde ORM | 18 | 3 | 86% | 2 | — | — |
What people said
40 of the 66 comments that mention it, newest first. Each links to the original comment.
“SQLAlchemy has an eDSL of SQL, so you can skip the whole ORM/table mapping layer”
“at no point were we married to it, you could generate your query any which way you please”
“As a user I just don't have to deal with most of its complexity on a day to day basis”
“It gives you a lot in return.”
“you realize you needed SQLA or some similar piece of tech all along”
“get rid of all of my workarounds that add or remove”
“make SQL more reusable/composable”
“sqlalchemy and alembic is a great toolchain outside of django”
“I once tried using SqlAlchemy but I couldn't help asking myself why it felt so complicated compared to Django.”
“SQLAlchemy vs hand rolled SQL and mapping the results it’s not even close.”
“they are both there for you for your highs (select * from table order by created at) and your lows”
“Yeah, you can use SQLAlchemy like this. It's called the data mapper pattern.”
“I am 100% sure what SQL do I want it to produce and what SQL will a particular ORM invocation produce.”
“I do use a very small subset of SQLAlchemy (the bits I understand) in data pipelines.”
“What function signature isn't going to look messy with 36 keyword arguments.”
“It's probably hard to come up with something messier than SqlAlchemy here.”
“So many things just don't really work in this world, like old-school lazy fetching in SQLAlchemy.”
“The main value I get from sqlalchemy is parsing the result into useful structures.”
“You don't need an ORM for any of that, just a query builder.”
“i've bounced between django and sqlalchemy”
“With SQLAlchemy approach I can easily find all usages of a particular column everywhere.”
“I insist on using SQLAlchemy for db models”
“Alchemy's strong point is "here's an existing database; let users who grok DB theory query it as efficiently and ergonomically as possible."”
“Lol I never knew django orm is faster than SQLAlchemy. But having used both that makes sense.”
“I can guarantee that someone equipped with a good foundation in SQL will be more successful debugging a Sequelize based application, than someone who has relied on SQLAlchemy”
“Every time I use them I think to myself it would be easier to just write SQL myself”
“Alchemy is the greatest thing in the world when you need its exact features.”
“sqlalchemy is better in every possible way”
“it started as an sql alchemy and pandas service”
“they're always lazy, so you never really know when the N+1s are going to happen”
“Sqlalchemy is a good example.”
“SQLAlchemy is undeniably the superior and far more capable ORM”
“the ORM blows SQLAlchemy out of the water, in terms of being able to produce quality software, quickly”
“I end up with a little more boilerplate”
“undisciplined (in terms of perf and cost) new ORM code being deployed (SQLAlchemy)”
“kludgy as it tries to translate SQL into a new language”
“I prefer a Django-like ORM to SQLAlchemy in spite of all the praises it gets”
“The SQLAlchemy integration looks interesting, but at the same time super specific.”
“SQL alchemy seems to be getting better.”
“I would still pick FastAPI/SQLAlchemy over Express and PostHog.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.