How Post Limits Work During Import

Understanding how limits are calculated during import and why actual usage is always lower than estimated.

FAQ

Why does the system request more limits than posts in my channel?

Telegram doesn't provide a list of actual posts — only the IDs of the first and last message. Between them there can be deleted messages, service records (pinning, title changes), and other technical IDs. Crosslybot counts all IDs in the range because it's impossible to know which ones are real posts before the import starts.

How much does the estimate differ from reality?

Typically, real posts are 20–40% fewer than the estimate shows. The older the channel and the more deletions it has had — the bigger the difference.

How are limits calculated with multiple targets?

Each post is published to each target separately. If you have 2 targets (e.g., VK and Max), 500 posts will require 1,000 limits. The system shows the formula: '500 posts × 2 targets = 1,000 publications'.

What if I don't have enough limits?

Three options: narrow the range (import in parts), purchase a post package in the subscription section, or click 'Yes, start' — forced import will run until limits are exhausted, then stop.

What does the 'Yes, start' button mean?

Force-starts the import even if the estimated limit isn't sufficient. The import will continue as long as limits are available, then stop. Already published posts are preserved.

How can I estimate the number of real posts more accurately?

Open your channel in Telegram and find the last post number (visible in the URL). Then scroll to the beginning and find the first. Real posts are usually 60–80% of the difference. For example, if the first post is #2 and the last is #587 — there are likely 350–470 real posts.

Can I import in parts?

Yes, specify a smaller range and start the import. After completion, specify the next range. Already imported posts won't be duplicated.

When importing old posts, Crosslybot checks in advance whether your plan limits are sufficient. Often the estimated number is higher than the actual posts in your channel. Let’s understand why this happens and how to work with it.

Why the Estimate Is Approximate

Telegram doesn’t allow fetching a list of all channel posts in advance. You provide links to the first and last post, and Crosslybot calculates the difference between their IDs. But not all numbers between them are real posts:

  • Deleted messages — posts that were published and later deleted. Their IDs remain “occupied” but have no content.
  • Service records — pinning a post, changing the channel name or avatar. Telegram assigns IDs to these, but they’re not content.
  • Gaps in numbering — mass deletions or technical operations can cause non-sequential numbering.

Crosslybot only discovers that a specific ID is empty when it tries to read it. That’s why the estimate is always approximate before import starts.

How Limits Work with Multiple Targets

Each imported post is published to every target in your project. If you have VK and Max connected — each post uses 2 limits.

Example: 500 posts, 2 targets → the system will request 1,000 limits.

This is standard Crosslybot logic — for both regular cross-posting and import.

How to Estimate More Accurately

Rule of thumb: real posts are usually 60–80% of the estimated range. For channels with heavy deletion history, it could be as low as 50%.

To estimate:

  1. ID difference = 585 (from post #2 to #587)
  2. Real posts ≈ 350–470
  3. With 2 targets, you need ≈ 700–940 limits

What to Do If Limits Aren’t Enough

  1. Narrow the range — import in parts, e.g., first 250 posts, then the next batch.
  2. Purchase more posts — packages are available in the Subscription section.
  3. Force-start — click “Yes, start”. The import will run until limits are exhausted, then stop. Already published posts are preserved, and you can continue later.
Free plan

Ready to try?

Connect the bot in 2 minutes. Free plan — no cards, no signup.

More about the bot →