Google Cloud Natural Language API vs TextLens API
Google Cloud Natural Language API is a powerful NLP service — but it has no readability scoring. If you need Flesch-Kincaid grades, SMOG, or consensus readability scores alongside sentiment analysis, TextLens API fills that gap without a GCP account, service account keys, or per-character billing.
Join the waitlistFeature comparison
| Feature | Google Cloud NL API | TextLens API |
|---|---|---|
| Readability formulas | None | 8 (Flesch-Kincaid, Gunning Fog, SMOG, Coleman-Liau, ARI, Dale-Chall, Linsear Write, consensus) |
| Sentiment analysis | ✓ (score + magnitude) | ✓ (AFINN score + label) |
| Entity recognition | ✓ (people, places, orgs, events, works, consumer goods) | ✗ |
| Entity sentiment | ✓ | ✗ |
| Syntax analysis | ✓ (dependency parse, morphology) | ✗ |
| Content classification | ✓ (700+ categories) | ✗ |
| Keyword extraction | ✗ | ✓ TF-IDF with relevance scores |
| SEO scoring | ✗ | ✓ |
| Pricing model | Per 1,000 characters (per-feature billing) | Per request (flat monthly tiers) |
| Free tier | 5,000 units/month per feature type | 1,000 req/mo (no expiry) |
| Setup required | GCP account, project, billing, service account key | API key (email signup) |
| Authentication | Google service account JSON / OAuth 2.0 | X-API-Key header |
| SDK dependency | google-cloud-language (Python) or client library | HTTP only (curl, fetch, any language) |
| Multiple analyses per request | ✗ (each feature billed separately) | ✓ (readability + sentiment + keywords in one call) |
The code
Google Cloud NL API Python
from google.cloud import language_v1
# Requires: GOOGLE_APPLICATION_CREDENTIALS env var
# pointing to a service account JSON key file
client = language_v1.LanguageServiceClient()
document = language_v1.Document(
content=text,
type_=language_v1.Document.Type.PLAIN_TEXT
)
# Each feature is a separate API call
sentiment = client.analyze_sentiment(
request={'document': document}
).document_sentiment
print(sentiment.score) # -1.0 to 1.0
# No readability scoring available.
# You need a separate library (textstat, etc.)
# and a separate invocation for each formula.
TextLens API Python
import requests
response = requests.post(
'https://api.ckmtools.dev/v1/analyze',
headers={'X-API-Key': TEXTLENS_KEY},
json={'text': text}
)
result = response.json()
# Readability + sentiment + keywords in one call
print(result['readability']['consensus_grade']) # Grade 8
print(result['sentiment']['label']) # positive
print(result['keywords'][0]['term']) # 'content analysis'
Google Cloud NL API requires a service account key file, GCP billing enabled, and a separate API call per feature — sentiment, entities, syntax each billed independently. TextLens API returns readability, sentiment, and keywords from one POST request with a single API key header.
Which one to use
Use Google Cloud Natural Language when:
- You need named entity recognition (people, organizations, events, works)
- You need entity-level sentiment (how does the text feel about a specific entity)
- You need full syntax analysis (dependency parse, morphological tags)
- You need content classification across 700+ category taxonomy
- You're already using GCP and want consolidated billing
Use TextLens API when:
- You need readability grades (Flesch-Kincaid, SMOG, Gunning Fog, etc.)
- You want keyword extraction (TF-IDF with relevance scores)
- You need flat-rate pricing without per-feature, per-character billing
- You don't want to manage GCP projects, service accounts, or billing alerts
- You're building in an environment where installing the Google client library is impractical
Pricing
Google Cloud Natural Language API charges per 1,000 characters, with each analysis feature (sentiment, entity recognition, syntax, classification) billed as a separate call. The free tier covers 5,000 units per month per feature type. TextLens API charges a flat monthly rate: Free (1,000 req/mo), Starter $9/mo (25,000 req), Pro $29/mo (100,000 req), Enterprise $99/mo (500,000 req).
For content teams running three analysis types on each piece — say readability, sentiment, and keyword checks — Google Cloud NL API bills each feature call independently. TextLens API bundles all three into one request at one flat rate, making cost predictability straightforward.
Pricing estimates are approximate and subject to change. Check cloud.google.com/natural-language/pricing for current Google Cloud rates.
Get Early Access
TextLens API is in development. Join the waitlist to get notified at launch.
From the team behind textlens — 1,073 npm downloads last month.
Join the Waitlist$0 — no credit card required
Also comparing: AWS Comprehend vs TextLens API →